Задать вопрос
GeForester
@GeForester
веб-разработчик

Как прочитать attribute дочернего элемента в XMLReader?

Есть очень большой XML, который последовательно читается с помощью XMLReader

<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://webmaster.yandex.ru/schemas/feed/realty/2010-06">
  <generation-date>2019-11-10T15:00:19+03:00</generation-date>
  <offer internal-id="14">
	  <image>plan.jpg</image>
	  <image>1.jpg</image>
	  <image tag="plan">2.jpg</image>
	  <image>3.jpg</image>
	  <image>4.jpg</image>
  </offer>
  <offer>
	  …
  </offer>
</feed>


Мне нужно проходить по всем offer и помимо прочих атрибутов выбрать только image tag="plan"
В текущей реализации я могу получить только атрибут элемента offer:

$reader = new XMLReader();
$reader->open('test.xml');
$doc = new DOMDocument;

while ($reader->read() && $reader->name !== 'offer');
while ($reader->name === 'offer')
{
    $node = simplexml_import_dom($doc->importNode($reader->expand(), true));
    print_r ($node->attributes()); // internal-id] => 14
    $reader->next('offer');
}


Как получить attribute элементов image?
  • Вопрос задан
  • 100 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 дек. 2024, в 20:40
10000 руб./за проект
22 дек. 2024, в 20:34
3000 руб./за проект
22 дек. 2024, в 20:12
10000 руб./за проект