我正在使用每个PHP的YouTube数据API,并以json格式请求来自特定用户的视频。 json_decode之后的结果如下(缩短示例):
stdClass Object
(
[version] => 1.0
[encoding] => UTF-8
[feed] => stdClass Object
(
[xmlns] => http://www.w3.org/2005/Atom
[xmlns$media] => http://search.yahoo.com/mrss/
[xmlns$openSearch] => http://a9.com/-/spec/opensearchrss/1.0/
[xmlns$gd] => http://schemas.google.com/g/2005
[xmlns$yt] => http://gdata.youtube.com/schemas/2007
)
)
我的问题是:如何使用PHP访问节点“xmlns $ media”?在美元符号内,它不会起作用,还是有一种我没有得到的方式?
答案 0 :(得分:30)
这将有效:
echo $object->feed->{'xmlns$media'};
或者,您可以告诉json_decode
返回一个数组:
$array = json_decode($json, true);
echo $array['feed']['xmlns$media'];
答案 1 :(得分:3)
如果您使用单引号而不是双引号,则不会评估美元符号。一般来说,你应该养成使用单引号的习惯,除非你真的需要双引号(例如转义的十六进制值)