Есть xml файл, который я хочу распарсить. Делаю я это так:
$get = file_get_contents('./1c.xml');
$arr = simplexml_load_string($get);
print_r($arr);
Получаю вот такой вывод:
SimpleXMLElement Object
(
[Группа] => Array
(
[0] => Первая
)
)
Хотя у меня файл содержит много элементов, вот чего часть:
<Каталог>
<Группа>Дом
<Группа>Первая
<Группа>Классика
<Группа>Футбол
<Номенклатура>
<Наименование>Футболка</Наименование>
<Цена>121</Цена>
<ЦенаСоСкидкой>121</ЦенаСоСкидкой>
<Цвет>Серый</Цвет>
<Размер>44</Размер>
<Материал/>
<Категория/>
</Номенклатура>
Т.е. из-за того, что <Группа>Первая
вот так записана, скрипт думает, что объект пустой.
Можно ли эту проблему как-то побороть?
Вообще у вас точка входа - Каталог.
Что бы получить "дом" необходимо написать так:
$arr->Группа->xpath("parent::*")
или так $arr[0]
Получить "Первая"
$arr->Группа
Получить далее
$arr->Группа->Группа
И так далее...
$arr->Группа->Группа->Группа
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Имеется код для парсинга XML файла в объектНо проблема в том, что при попытке передать объект simpleXml в метод мне ругается таким образом Only variables...
В php для получения данных из POST и GET есть соответствующие методы, но как получить данные например из PUT ?
Есть следующий алгоритм, написанный мной на JS: