Когда я использую $this
внутри create_function
Я получаю ошибку
Неустранимая ошибка: использование $ this, когда не в контексте объекта
create_function('$model, $this', 'return $this->di->getStatus($model->getStatus)');
Позже я называю это как
$function($model, $this);
Я прошел $this
к функции, но, кажется, не работает. Есть способ обойти это?
Спасибо
После нескольких часов отладки и исследований я обнаружил, что мой код был заключен в функцию, поэтому конечный результат был чем-то вроде
function($var1, $var2) { return create_function()}
Таким образом, закрытие было создано и $this
больше не было в объеме, который я хотел.
Подробнее о замыканиях здесь:
http://php.net/manual/ro/class.closure.php
Других решений пока нет …