带有括号和对象成员的PHP行为


PHP behavior with parenthesis and object members

最近我正在处理一个mysqli对象上的SQL查询调用的结果。我写了这行代码:

$record = ($result->fetch_object())->acc_id;

我得到了那条线的CCD_ 1。

有一次我把代码改成这样:

$record = $result->fetch_object()->acc_id;

它按预期工作。

为什么括号会导致解析错误?我知道在C#中,不管它们如何,前一个代码都能工作(考虑到语法的变化)?

如trincot:所述

PHP的限制。您不能在评估表达式上使用->