Php magic-get方法的问题
我正在尝试用php编写自己的magic\uuuu get方法。 但是我得到了这个错误: __get()必须正好接受1个参数。 错误是指下面函数中的最后一行 有什么想法吗Php magic-get方法的问题,php,Php,我正在尝试用php编写自己的magic\uuuu get方法。 但是我得到了这个错误: __get()必须正好接受1个参数。 错误是指下面函数中的最后一行 有什么想法吗 public function __get() { $method = 'get'.ucfirst($name); if(!method_exists($this, $method)) throw new Exception('Invalid property'); var_dum
public function __get()
{
$method = 'get'.ucfirst($name);
if(!method_exists($this, $method))
throw new Exception('Invalid property');
var_dump($method);
return $this->{$method}();
}
您必须指定一个参数,该参数引用您试图访问的变量名。传入
$name
:
public function __get($name)
将第一行更改为
public function __get($name) {
这更好吗
public function __get($name)
{
$method = 'get'.ucfirst($name);
if(!method_exists($this, $method))
throw new Exception('Invalid property');
var_dump($method);
return $this->{$method}();
}
我添加了name参数。magic get函数只需要一个参数,如错误所述。请尝试以下代码:
public function __get( $name )
_uuuget($name)函数中缺少一个参数。 这将为您提供所需变量的值
public function __get($name) {
...
...
}