Во первых - как отче наш первым делом включаем вывод ошибок, гадание на хрустальном шаре не наш метод. Во вторых - читайте ответ Adamos, ридер попроще функционалом, но работает быстрее и памяти ест в разы меньше.
Длительные задачи нужно запускать консольным скриптом (потому что у консольного пхп нет ограничений по времени), или событием с фронтенда создавать задачу в очередь сообщений, которая отработает в фоне.
SimpleXML не годится для больших файлов. Для них лучше использовать XMLReader, который не строит в памяти все дерево, а читает узлы по одному. Вычитываете из файла категории и продукты, потом уже сопоставляете одно другому на чистом Пыхе.
Ответ написан
Комментировать
Комментировать
Оценили как «Нравится»
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.