1

我想知道如何访问 stdObjects 的 stdObect 数组。我有一个在打印时看起来像这样的数组print_r()

stdClass Object ([item] => Array(
    [0] => stdClass Object([id] => 0 [name] => Peter)
    [1] => stdClass Object([id] => 1 [name] => Jack)))

如何访问名称字段?如果它不是一个数组,我可以通过调用该字段来获取属性,例如:

$client = new SoapClient("http://url.to.my.wsdl", array("trace" => 0));
echo $client->GetPerson()->name;

但是当使用数组时,这不起作用:

$client = new SoapClient("http://url.to.my.wsdl", array("trace" => 0));
$persons = $client->GetPersons();
echo $persons[0]->name;

这只是给了我错误:

Fatal error: Cannot use object of type stdClass as array
4

3 回答 3

2

根据您的 print_r 信息,请尝试

echo $persons->item[0]->name
于 2012-02-20T11:13:09.863 回答
1

尝试这个:

$persons->item[0]->name;
于 2012-02-20T11:13:32.047 回答
1

该数组包含在 field 内item

echo $persons->item[0]->name;
于 2012-02-20T11:13:58.020 回答