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?
  • Вопрос задан
  • 91 просмотр
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
24 апр. 2024, в 16:19
4000 руб./за проект
24 апр. 2024, в 15:34
20000 руб./за проект
24 апр. 2024, в 15:32
130000 руб./за проект