Я немного запутался об ошибке синтаксического анализа:PHP5 - Назначение результата операции не рассматривается в качестве объекта анализатора
class Foo{
public function some_function(){}
}
($foo = new Foo())->some_function();
дает
PHP Parse error: syntax error, unexpected '->' (T_OBJECT_OPERATOR), expecting ',' or ';'
Вот что PHP-langspec состояние о простом выражение присваивания:
The type and value of the result is the type and value of the left-hand operand after the store (if any [see below]) has taken place. The result is not an lvalue.
Теперь, как я понимаю, результат присваивания должен быть эквивалентен переменной e xcept это не будет lvalue (без назначения возможно). Так почему же возникает ошибка?
Я что-то не хватает?
EDIT
PHP версия 5.5.9
Это не относится к методам построения цепочки, это ошибка синтаксического анализа не ошибка времени выполнения.
Какая версия php использует компилятор ur? – Yannjoel
версия PHP отсутствует. '5.3' Я полагаю? –
php версия 5.5.9 – Bastien