Я только что заметил, что если вы попытаетесь поместить переменную переменную в список use
замыкания, она выдаст ошибку разбора.Пример кода:
foreach ($array as $key => $item) {
$$key = $item->something;
$this->doSomething($key, function ($param) use ($item, $$key) {
$param->foo($$key);
});
}
Ошибка разбора:
Ошибка разбора: синтаксическая ошибка, неожиданный '$', ожидаемый '&' или переменная (T_VARIABLE) в
Что-то я здесь не так делаю?Почему бы не позволить мне передать переменную переменную?
Если я сохраню значение переменной переменной в другой переменной, я могу передать его обычно через use
, но это не оптимально для моего реального случая.