可能重复:
调用时传递引用已被弃用;
我的 Kohana 站点,在库文件中获取此警报。
Call-time pass-by-reference has been deprecated
那是问题线:
call_user_func('Formo_'.$name.'::load', & $this);
我该如何解决这个问题?
可能重复:
调用时传递引用已被弃用;
我的 Kohana 站点,在库文件中获取此警报。
Call-time pass-by-reference has been deprecated
那是问题线:
call_user_func('Formo_'.$name.'::load', & $this);
我该如何解决这个问题?
删除&
之前的$this
.
PHP5 不需要添加 - 默认情况下,所有对象都作为对象标识符传递,不需要像 PHP 4 那样通过引用传递来模仿这一点。
要在 php5 中通过引用传递变量,您需要&
在函数声明中添加。不是在您调用该函数时。
function call_user_func($param1, &$param2) {
// $param2 will be a reference
// as mentioned by damianb though objects are by default references
// http://php.net/manual/en/language.oop5.references.php
}
当调用它时,只需像往常一样传入你的参数,param2 将通过引用传递。
http://php.net/manual/en/language.references.pass.php
上面的链接清楚地解释了错误。
注意:函数调用上没有参考符号 - 仅在函数定义上。仅函数定义就足以通过引用正确传递参数。从 PHP 5.3.0 开始,当您在 foo(&$a); 中使用 & 时,您将收到一条警告说“调用时传递引用”已被弃用。