Я действительно надеюсь, что кто-то может мне помочь в этом.Условно анализ XML-атрибутов с помощью PHP
В принципе, я пытаюсь проанализировать определенные XML-атрибуты в дереве XML на основе других атрибутов в этой ветке.
В качестве примера типа XML я работаю с: -
<root>
<employees>
<team id="1643">
<member id ="153461" jobtype="permament" division="cleaning" rollnumber="1364"/>
<member id ="153461" jobtype="temporary" division="reception" rollnumber="1326"/>
<member id ="153461" jobtype="parttime" division="cleaning" rollnumber="1312"/>
<member id ="153461" jobtype="permament" division="cleaning" rollnumber="1326"/>
</team>
<team id="1633">
<member id ="153461" jobtype="permament" division="cleaning" rollnumber="1244"/>
<member id ="153461" jobtype="temporary" division="reception" rollnumber="1569"/>
<member id ="153461" jobtype="parttime" division="cleaning" rollnumber="1472"/>
<member id ="153461" jobtype="permament" division="cleaning" rollnumber="1112"/>
</team>
<team id="1674">
<member id ="153461" jobtype="permament" division="cleaning" rollnumber="1488"/>
<member id ="153461" jobtype="temporary" division="reception" rollnumber="1032"/>
<member id ="153461" jobtype="parttime" division="cleaning" rollnumber="1886"/>
<member id ="153461" jobtype="permament" division="cleaning" rollnumber="1445"/>
</team>
</employees>
</root>
То, что я пытаюсь сделать, это достичь rollnumber для всех сотрудников, которые заполняют определенные категории. Поэтому я хочу иметь возможность сделать то, что выглядит как «Если jobtype =« постоянный »и деление =« очистка », то эхо-число«.
Теперь я попытался разобрать это с помощью PHP и в основном не удалось. Я потерпел неудачу, потому что использовал синтаксис, например:
$team->xpath("//member[@jobtype='permament'][@division='cleaning']/@rollnumber")
Это анализирует массив. Нет проблем. Я могу вывести переменные из массива. Нет проблем.
Проблема заключается в ...
... PHP не могут иметь дело с вложенными массивами, которые производят этот код. Он хранит исходный массив в памяти и снова и снова анализирует одни и те же переменные. Я попытался сбросить массив и т. Д. В конце каждого цикла, но это не сработало. PHP только кажется способным уничтожить массив в конце последовательности foreach.
Мне бы очень хотелось узнать, можно ли это проанализировать с помощью PHP? Есть ли для этого работа? Любая помощь/совет были бы очень оценены.
Большое спасибо. Я должен сказать, что материал немного более продвинут, чем то, к чему я привык. – user475018
Могу ли я спросить, нужно ли это встраивать в цикл foreach для итерации дерева XML? – user475018