Как разобрать или загрузить большой XML-файл на PHP?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как разобрать или загрузить большой XML-файл на PHP?

Сообщение Anonymous »


Я хочу проанализировать или загрузить XML-файл. Файл представляет собой XML-канал.

Я пытался разобрать файл следующим образом:

$this->url = 'https://example.com/feed.xml'; $reader = XMLReader::open($this->url); while ($reader->read()) { if ($reader->nodeType == XMLREADER::ELEMENT) { // Получаем значение первого атрибута $value = $reader->getAttributeNo(0); // Выводим значение в браузер эхо $значение. "
"; } } Но ничего не происходит. Выходных данных нет.

Я тоже пробовал вот так:

$document = новый DOMDocument(); $xpath = новый DOMXpath($document); // ищем первый узел элемента "item" пока ( $reader->read() && $reader->localName !== 'item' ) { продолжать; } while ($reader->localName === 'item') { $domItem = $reader->expand($document); эхо "\nId: " . $xpath->evaluate('string(g:id)', $domItem); } Но вывода тоже нет. Интересно, правильно ли это? XMLReader должен читать XML-файл построчно, не так ли?

Затем я попытался загрузить XML-файл:

if (file_put_contents('./feed.xml', file_get_contents(self::PROD_URL))) { echo «Файл успешно загружен»; } еще { echo "Не удалось загрузить файл."; } Но там написано: «Не удалось загрузить файл». XML-файл выглядит следующим образом. У него много. Я хочу получить все элементы с их узлами.

Мой канал Откройте для себя невероятное... https://example.com де-DE https://example.com/media/logo.png example.com https://example.com 12345 Товар 1 Подробное описание 1 123456 Продукт 2 Подробное описание 2 ... Какой путь?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»