ошибка при использовании $ this на create_function

Когда я использую $this внутри create_function Я получаю ошибку

Неустранимая ошибка: использование $ this, когда не в контексте объекта

create_function('$model, $this', 'return $this->di->getStatus($model->getStatus)');

Позже я называю это как

$function($model, $this);

Я прошел $this к функции, но, кажется, не работает. Есть способ обойти это?

Спасибо

-1

Решение

После нескольких часов отладки и исследований я обнаружил, что мой код был заключен в функцию, поэтому конечный результат был чем-то вроде

function($var1, $var2) { return create_function()}

Таким образом, закрытие было создано и $this больше не было в объеме, который я хотел.

Подробнее о замыканиях здесь:
http://php.net/manual/ro/class.closure.php

0

Другие решения

Других решений пока нет …