parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

В этом случае вы точно знаете структуру данных...

Sumo 23.12.2014 21:15

... поэтому можете написать в коде выражение с точным путем: $data.node.subnode.onemorenode. Это тот самый xpath, только на Парсере.

Если структура данных неизвестна (что само по себе странно), то в любом случае надо делать рекурсивный обход данных. Для этого отлично подходят функции. Рекурсию Парсер делать умеет. Никакой process здесь не нужен в принципе.

Все, что вы описываете, прекрасно делается стандартными методами языков программирования, которые были придуманы лет сорок назад и отлично работают до сих пор. В этих языках никакой интроспекции и эвалов не было. :)

Интересный момент. Парсер поддерживает работу с xpath для xml и его удобно использовать при первых попытках разобрать xml. А потом начинаешь понимать, что домом пользоваться не сильно сложнее, но гораздо быстрее.

Так что давайте все-таки разговаривать о примерах из реальной жизни. Мол вот такая ситуация, на входе такие данные, на выходе надо получить то-то и то-то. Делаю так-то. Затык тут и тут.