#php #xml #function #iteration
#php #xml #функция #итерация
Вопрос:
я пытаюсь передать xml-узел функции, но не могу понять, как это сделать — вот моя xml-разметка:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<root>
<form>
<item>
<id>frm1</id>
<dbID>1</dbID>
<visible>1</visible>
</item>
</form>
<form>
<item>
<id>frm2</id>
<dbID>2</dbID>
<visible>1</visible>
</item>
</form>
</root>
при настройке цикла foreach — каков синтаксис для итерации по xml и передачи всего узла функции?
я пробовал что-то вроде:
foreach($xml as $ctlXML => $value)
{
$ctl = generateCTL($ctlXML);
}
но это работает не так, как должно.
Спасибо
Комментарии:
1. Вы должны показать нам немного больше кода, например, как вы загружаете XML (simplexml ? DOM ?) , как вы вызываете функцию, что вы получаете и что вы хотели бы получить.
Ответ №1:
Если вы используете SimpleXML, это просто, как
$xml = simplexml_load_file($path_to_file);
foreach($xml->form as $form){
$ctl = generateCTL($form->item);
}
Будьте осторожны — $form->item — это объект
Комментарии:
1. Это должно быть
foreach($xml->form as $form)