Доступ к PHP-объекту со знаком доллара как имя узла

Я работаю с API данных YouTube на PHP и запрашиваю видео-канал от конкретного пользователя в 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 ) ) 

Мой вопрос: как я могу получить доступ, например, к узлу «xmlns $ media» с PHP? В пределах знака доллара это не сработает или есть способ, которого я еще не получил?

Это будет работать:

 echo $object->feed->{'xmlns$media'}; 

Кроме того, вы можете указать json_decode для возврата массива:

 $array = json_decode($json, true); echo $array['feed']['xmlns$media']; 

Если вы используете одиночные кавычки вместо двойных кавычек, знак доллара не будет оцениваться. Вообще говоря, вы должны привыкнуть использовать одиночные кавычки, если вам действительно не нужны двойные кавычки для чего-либо (например, экранированные шестнадцатеричные значения)