Разбор XML (PHP) - PullRequest
       16

Разбор XML (PHP)

0 голосов
/ 01 марта 2011

Я использую SimpleXML. Я хочу получить атрибут text этого узла.

<yweather:condition  text="Mostly Cloudy"  ......

Я использую это, оно не работает:

$xml->children("yweather", TRUE)->condition->attributes()->text;

Ответы [ 3 ]

1 голос
/ 01 марта 2011

Сделайте print_r () для $ xml, чтобы увидеть, как выглядит структура. Оттуда вы сможете увидеть, как получить доступ к информации.

0 голосов
/ 01 марта 2011

Похоже, вы пытаетесь получить доступ к атрибуту, который хранится в массиве в $ xml-> yweather-> attribute (), поэтому:

$attributes = $xml->condition->attributes();
$weather = $attributes['text'];

Чтобы разобраться с пространством имен, вам нужно использовать children (), чтобы получить членов этого пространства имен.

$weather_items = $xml->channel->item->children("http://xml.weather.yahoo.com/ns/rss/1.0");

Можно упомянуть, что показанная вами строка является частью канала, в частности, RSS-канала Yahoo Weather в формате RSS.

0 голосов
/ 01 марта 2011

Возможно, вы используете условие $ xml->, но до этого могут быть ветки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...