Задать вопрос
besogonskiy
@besogonskiy
работаю php laravel разработчиком.

Как импортировать данные из больших файлов xml? Памяти нехватает на них?

Раньше в основном работали с поставщиками, у которых мало товаров и свойств и достаточно было при помощи XMLReader вычитвало всё подряд из файла xml рекурсивно и создавал ассоциативный массив, а потом уже обращался к этому массиву, но сейчас попался такой файл, где где всё считать в массив не получается- памяти нехвтает даже на сервере. файлы больше 100 мегабайт.

Какую либу выбрать чтоб удобно было
- по названию родительского тэга вытаскивать все записи последовательно.

Например, по тэгу "<Товары>" вытащить все записи "Товар", но не сразу, а один за другим, потому что их там десятки
тысяч.

Хотелось бы уметь делать с этим xml что угодно. влоть до того чтобы визуально видеть все его узлы и привязывать к ним через визуальный редактор соотвествующие настройки чтоб потом знать октуда что вытаскивать.

Или может на других языках программирование такое есть?
  • Вопрос задан
  • 104 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 1
iMedved2009
@iMedved2009
Не люблю людей
XMLReader ровно и предназначен для работы с большими XML. Проблема не в нем, а в попытке загрузить все нужные ноды в память - и здесь вас другой язык не сильно спасет - без вопросов какой нибудь язык сможет загрузить в память больше элементов, чем PHP, но все равно рано или поздно уткнется в память при n-количестве элементов. По этому берете XMLReader открываете файл идете по дереву - встретили нужный элемент, обработали и пошли дальше.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽