Есть XML файл размером около 1 ГБ, который в дальнейшем, возможно, будет увеличиваться. В этом XML надо обработать определенные блоки. Сейчас пытаюсь с помощью XMLReader сделать преобразования в массив, но не могу понять как обходить вложенности, то есть не тупо писать
$reader->read();
$var = $reader->localName;
$reader->read();
....
Хочется понять, как автоматизировать обход вложенности, а не делать это в ручную.
Буду очень благодарен за помощь.
Часть, которую сейчас пытаюсь преобразовать
<Свойства>
<Свойство>
<Ид>b27961ab-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Наименование для сайта</Наименование>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961ad-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Тип</Наименование>
<ТипЗначений>Справочник</ТипЗначений>
<ВариантыЗначений>
<Справочник>
<ИдЗначения>8f864cca-c3ee-11e9-b6d2-00016cd99202</ИдЗначения>
<Значение>Люстры</Значение>
</Справочник>
<Справочник>
<ИдЗначения>6716ce9d-c4a6-11e9-b953-f44d3076153a</ИдЗначения>
<Значение>Настенные</Значение>
</Справочник>
<Справочник>
<ИдЗначения>d8a3c853-c4ba-11e9-b953-f44d3076153a</ИдЗначения>
<Значение>Напольные</Значение>
</Справочник>
</ВариантыЗначений>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961ae-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Стиль</Наименование>
<ТипЗначений>Справочник</ТипЗначений>
<ВариантыЗначений>
<Справочник>
<ИдЗначения>671e0b69-f7ac-11e3-8d3f-002522cd5395</ИдЗначения>
<Значение>Современные</Значение>
</Справочник>
<Справочник>
<ИдЗначения>663f9c5b-f82d-11e3-b27a-002522cd5395</ИдЗначения>
<Значение>Лофт</Значение>
</Справочник>
</ВариантыЗначений>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961af-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Производитель</Наименование>
<ТипЗначений>Справочник</ТипЗначений>
<ВариантыЗначений>
<Справочник>
<ИдЗначения>671e0b68-f7ac-11e3-8d3f-002522cd5395</ИдЗначения>
<Значение>Лунный Свет (Испания)</Значение>
</Справочник>
</ВариантыЗначений>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961b0-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Серия (групировка по арт.)</Наименование>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961b1-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Фото 1</Наименование>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961b2-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Фото 2</Наименование>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961b3-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Фото 3</Наименование>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961b4-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Фото 4</Наименование>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961b5-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Фото 5</Наименование>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961b6-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Рекомендуемая площадь освещённости</Наименование>
<ТипЗначений>Число</ТипЗначений>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961b7-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Тип ламп</Наименование>
<ТипЗначений>Справочник</ТипЗначений>
<ВариантыЗначений>
<Справочник>
<ИдЗначения>671e0b6c-f7ac-11e3-8d3f-002522cd5395</ИдЗначения>
<Значение>Светодиодные</Значение>
</Справочник>
<Справочник>
<ИдЗначения>663f9c6a-f82d-11e3-b27a-002522cd5395</ИдЗначения>
<Значение>Е14</Значение>
</Справочник>
<Справочник>
<ИдЗначения>663f9c6b-f82d-11e3-b27a-002522cd5395</ИдЗначения>
<Значение>Е27</Значение>
</Справочник>
</ВариантыЗначений>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961b8-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Количество ламп (шт)</Наименование>
<ТипЗначений>Число</ТипЗначений>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961ba-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Цвет арматуры_1</Наименование>
<ТипЗначений>Справочник</ТипЗначений>
<ВариантыЗначений>
<Справочник>
<ИдЗначения>663f9c72-f82d-11e3-b27a-002522cd5395</ИдЗначения>
<Значение>Белый</Значение>
</Справочник>
<Справочник>
<ИдЗначения>663f9c7c-f82d-11e3-b27a-002522cd5395</ИдЗначения>
<Значение>Коричневый</Значение>
</Справочник>
<Справочник>
<ИдЗначения>663f9c73-f82d-11e3-b27a-002522cd5395</ИдЗначения>
<Значение>Хром</Значение>
</Справочник>
<Справочник>
<ИдЗначения>663f9c76-f82d-11e3-b27a-002522cd5395</ИдЗначения>
<Значение>Золото</Значение>
</Справочник>
</ВариантыЗначений>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961bb-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Цвет плафона_1</Наименование>
<ТипЗначений>Справочник</ТипЗначений>
<ВариантыЗначений>
<Справочник>
<ИдЗначения>c9f4043f-f832-11e3-b27a-002522cd5395</ИдЗначения>
<Значение>Прозрачный</Значение>
</Справочник>
<Справочник>
<ИдЗначения>671e0b70-f7ac-11e3-8d3f-002522cd5395</ИдЗначения>
<Значение>Белый</Значение>
</Справочник>
</ВариантыЗначений>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961bc-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Цвет аксессуаров</Наименование>
<ТипЗначений>Справочник</ТипЗначений>
<ВариантыЗначений>
<Справочник>
<ИдЗначения>c9f40458-f832-11e3-b27a-002522cd5395</ИдЗначения>
<Значение>Прозрачный</Значение>
</Справочник>
</ВариантыЗначений>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961bd-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Тип крепежа</Наименование>
<ТипЗначений>Справочник</ТипЗначений>
<ВариантыЗначений>
<Справочник>
<ИдЗначения>671e0b6b-f7ac-11e3-8d3f-002522cd5395</ИдЗначения>
<Значение>Планка</Значение>
</Справочник>
<Справочник>
<ИдЗначения>663f9c68-f82d-11e3-b27a-002522cd5395</ИдЗначения>
<Значение>Корпусом</Значение>
</Справочник>
</ВариантыЗначений>
<ДляТоваров>true</ДляТоваров>
</Свойство>
<Свойство>
<Ид>b27961be-f7a3-11e3-8d3f-002522cd5395</Ид>
<Наименование>Высота подвеса (мм)</Наименование>
<ТипЗначений>Число</ТипЗначений>
<ДляТоваров>true</ДляТоваров>
</Свойство>
</Свойства>