Я получаю XML-ответ, основанный на запросе, который я размещаю на сервере, и он на самом деле возвращает действительный набор результатов, которые я могу вывести на экран с помощью print_r (). Набор результатов выглядит следующим образом (редактировать: этоточная структура файла):
<root>
<main_node1>
<value1>one</value1>
<value2>two</value2>
</main_node1>
<main_node2>
<anothervalue>whatever</anothervalue>
</main_node2>
<recordset>
<record>
<value1>one</value1>
<value2>two</value2>
</reocrd>
<record>
<value1>one</value1>
<value2>two</value2>
</reocrd>
<record>
<value1>one</value1>
<value2>two</value2>
</reocrd>
</recordset>
</root>
когда я использую строку:
$xml = simplexml_load_string($xmlRequest);
$records = $xml->recordset->record;
Я могу без проблем пройти по массиву $ records с циклом foreach, когдаЯ пытаюсь получить доступ к определенной записи в наборе записей, используя такой индекс, как
$record = $xml->recordset->record[$index];
Я получаю пустое значение обратно.Я также попытался преобразовать результат в (массив), но пока безуспешно.
В каждом документе, который я просматривал в отношении simpleXML, говорится, что можно получить доступ к узлу XML по индексу, может кто-нибудь сказать мне, что я могу делать не так здесь?пока не в корне документа, я могу использовать нотацию $ xml-> recordset-> record, чтобы загрузить список записей в мою переменную $ records и распечатать его с помощью цикла foreach.