访问 PHP 中对象内的嵌套对象无效

Accessing nested objects within objects in PHP not working

在 PHP 中,我使用 QuickBooks Online 帐户的查询功能请求数据。

我正在遍历标准 foreach($customer as $x) 代码块中返回的每个客户对象。

使用var_dump,我可以看出每个对象都具有以下格式:

object(QuickBooksOnline\API\Data\IPPCustomer) [34]
public 'Taxable' => string 'true' (length=4)
public 'BillAddr' =>
    object(QuickBooksOnline\API\Data\IPPCustomer) [78]
    public 'Id' => string '7509' (length=4)
    public 'Line1' => '1234 Irrelevant Dr.' (length=19)

在 PHP 中,如果我只是尝试访问 $x->Taxable,它没有问题,但是 any 子对象我尝试访问 returns 一个错误:"trying to get property of non-object on line X"

所以:

echo $x->Taxable; 

给我应税身份,但是

echo $x->BillAddr->Line1; 

给我一个错误。

这些是public类,所以我不应该这样称呼他们吗?

发现了问题,我不知道为什么需要这样做,但我是这样工作的,添加花括号:

echo "{$x->BillAddr->Line1}"; 而不仅仅是 echo "$x->BillAddr->Line1";

显然,同样的规则也适用于赋值:

$line1 = "{$x->BillAddr->Line1}";

谢谢你们的帮助,伙计们!