petushok55
@petushok55
Обучаюсь на практике.

Как спарсить большой файл с PHP?

Привет!
Есть файлик extallor.json
Его масса тела равна 30 МБ
Вот спрашивается, что бы вы сделали, если бы вам надо было это всё распарсить и занести данные в базу? Какие методы, средства использовали бы?
spoiler
alert('капец');
  • Вопрос задан
  • 356 просмотров
Решения вопроса 2
New_Horizons
@New_Horizons
Бред:
Потоковый разбор https://packagist.org/packages/salsify/json-stream...

но вообще, 30мб и правда не так много. Если это конечно не какой-нибудь shared-хостинг и 100мб памяти)
Ответ написан
DevMan
@DevMan
30 метров – это вообще не размер. и очень далеко от "большой файл".

большинством современных хостов такой файл спокойно обработается банальным json_decode . а если крутите на кофеварке, то потоковый парсер в помощь.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
zkrvndm
@zkrvndm
Архитектор решений
Просто вынесите задачу на фронт. Создайте небольшую html-страничу, внутри нее кнопку. При нажатии на кнопку, вы скачивайте ваш JSON и парсите его. После парсинга по одному перебирайте ключи первого уровня вложенности и fetch-ем по одному отсылайте данные на сервер, чтобы он из сохранил у себя. Отсылайте по одному и строго один за другим, чтобы не перегружать ваш бэкенд и так, чтобы каждый очередной запрос с гарантией успевал отработать за 60 сек.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы