Использование '$this' в анонимной функции в PHP до 5.4.0

В руководстве по PHP говорится

Невозможно использовать $this из анонимной функции перед PHP 5.4.0

на странице анонимных функций. Но я обнаружил, что могу заставить его работать, назначив $this переменной и передав переменную оператору use в определении функции.

$CI = $this;
$callback = function () use ($CI) {
    $CI->public_method();
};

Является ли это хорошей практикой?
Есть ли лучший способ доступа к $this внутри анонимной функции с помощью PHP 5.3?

85
задан Just a student 26 January 2018 в 12:32
поделиться