当我在$this
内使用create_function
时,我收到了错误
致命错误:不在对象上下文中时使用$ this
create_function('$model, $this', 'return $this->di->getStatus($model->getStatus)');
稍后我称之为
$function($model, $this);
我将$this
传递给了该函数,但似乎无法正常工作。有办法解决它吗?
由于
答案 0 :(得分:0)
经过数小时的调试和研究后,我发现我的代码被包装在一个函数中,所以最终的结果就像是
function($var1, $var2) { return create_function()}
这样就创建了一个闭包,$this
不再属于我想要的范围。
关于闭包的更多信息: http://php.net/manual/ro/class.closure.php