开发者

Access object property with disallowed character in property name

开发者 https://www.devze.com 2023-01-29 12:27 出处:网络
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):

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)

0

精彩评论

暂无评论...
验证码 换一张
取 消