我正在使用freebase API。当我从curl操作得到结果时,我将json解码为PHP。现在我正在尝试访问文本归属。它深埋在这组物体和阵列中。
stdClass Object
(
[id] => /m/09c7w0
[property] => stdClass Object
(
[/common/topic/description] => stdClass Object
(
[valuetype] => string
[values] => Array
(
[0] => stdClass Object
(
[text] => The United States of America, commonly called the United States and colloquially referred to as...
[lang] => en
[creator] => /user/wikirecon_bot
[project] => wikirecon
[dataset] => /m/0kj4zz_
[citation] => stdClass Object
这是我到目前为止所尝试的但是我遇到了一些错误。 $ stuff = $ data-> property-> / common / topic / description-> text;
我知道错误可能是“/ common / topic / description”的结果。我应该转换json响应php对象还是我应该首先尝试在json中找到我的值?有没有办法可以访问该属性“text”
答案 0 :(得分:2)
使用json_decode($jsonstring, true)
仅使用文本和数字键获取数组,而不使用任何对象。
这样可以更方便地访问所有内容。您对键的命名方式的限制甚至更少。
答案 1 :(得分:0)
有点难以阅读你的类和数组的混合但是试试这个:
$data->property->{'/common/topic/description'}->values[0]->text