Появилась необходимость парсить xml файл, в котором строки повторяются. Пример:
<item url="sk=21&gr=12231769">Гондурас. Национальная лига </item>
<item url="sk=21&gr=12231820">Никарагуа. Примера дивизион </item>
<item url="sk=21&gr=12231742">США. USL Чемпионшип </item>
<item url="sk=21&gr=12231464">Бахрейн. Премьер-лига </item>
<item url="sk=21&gr=12231916">Иордания. Про-лига </item>
Пробовал php функцию: simplexml_load_string
Отлично парсит каждую позицию, но вот значение url, видимо, никак не получить.
Пробовал библиотеку orchestra/parser.
Код:
$array = $source->parse([
'item' => ['uses' => 'sport.item']
]);
Выдает только первую строчку из xml. Можно добавить [] после item, чтобы код стал таким:
$array = $source->parse([
'item' => ['uses' => 'sport.item[]']
]);
Тогда в массиве появляется то же количество элементов, что и строк в xml. Это радует, но элементы все содержат null. Выглядит это так:
array:1 [▼
"item" => array:125 [▼
0 => array:1 [▼
"" => null
]
1 => array:1 [▼
"" => null
]
2 => array:1 [▼
"" => null
]
3 => array:1 [▼
"" => null
]
]
]
Ума не приложу, как парсить так, чтобы на выходе был массив со всеми записями, из xml, и url из строк item url.
Подскажите, пожалуйста, куда смотреть.