PHP,获取未定义的属性:stdClass::$id,但它确实存在


PHP, getting Undefined property: stdClass::$id but it definitely exists

所以这是一个非常简单的代码,我正在努力解决这个问题。

//I first retrieve some JSON info (confirmed to work fine)
$file=file_get_contents('url');
//I then decode and print to verify (still working)
$somename=json_decode($file);

我把它打印出来只是为了确保它能工作(确实如此):

print_r($somename);

打印结果如下:

stdClass Object ( [id] => 456456456 [name] => somename [Stuff01] => 55 [Stuff02] => 25 [Stuff03] => 123132123132 ) ) 

现在我只想得到"id"键中的值,所以我使用适当的对象调用:

$thisID=$somename->{'id'};

但我得到了错误:

注意:未定义的属性:stdClass::$id

我每次都打印,所以我知道它在那里。我看得出来。我做错了什么?

我做这件事很多次都没有问题。

如何访问单个属性取决于您的数据结构。你有一种嵌套的结构,对象中的对象。尝试如下:

 $somename->somename->id;
 //or    
 $yourObjectName->somename->id;

我希望这能有所帮助!