I'm working with the YouTube Data API per PHP and requesting a video feed from a specific user in json-format. The result after json_decode is the following (shortened example):
stdClass Object
(
[v开发者_如何学运维ersion] => 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
)
)
My question is: how can I access for example the node "xmlns$media" with PHP? Within the dollar-sign it won't work or is there a way which I didn't get yet?
This will work:
echo $object->feed->{'xmlns$media'};
Alternatively, you can tell json_decode
to return an array:
$array = json_decode($json, true);
echo $array['feed']['xmlns$media'];
If you use single-quotes instead of double-quotes, the dollar sign won't be evaluated. Generally speaking, you should get in the habit of using single-quotes unless you really need double-quotes for something (such as escaped hex values)
精彩评论