PHP Recursive Directory-Iterator разбит на фрагменты

У меня есть сценарий резервного копирования, который вызывается ночью через завиток. Этот сценарий запускает весь базовый каталог с помощью Directory-Iterator и генерирует XML-файл с именем файла / каталогом и контрольной суммой. Все данные будут сгенерированы одним простым запросом на завиток. Но на втором гораздо более крупном сайте скрипт запускается по таймауту.

Итак, мой вопрос в том, как я могу повторять по частям. Моя идея состоит в том, чтобы сохранить последний файл продолжения в DB / tmpfile, когда время выполнения достигает определенного предела. Затем отправляет ответ, в котором говорится, что клиент отправляет новый запрос и повторяет его, пока не будет просканирован весь сайт.

Все ваши комментарии приветствуются. Паскаль

Chunk все усложнит. Насколько глубока базовая директория. Можете поделиться кодом скрипта?
nice_dev 01.08.2018 07:35

Зачем чанк усложнять. Если вы знаете последний файл, вы можете продолжить работу с другими файлами в цикле. Базовый каталог - это CMS. Итак, есть много каталогов и файлов. Источник pastebin.com/WyL8BECX

Pascal B 01.08.2018 08:14

Поделитесь своим кодом в самом StackOverflow. Chunk окажется утомительным, потому что вам придется сохранять и извлекать, и то же самое нужно делать на стороне клиента, которая делает эти запросы curl. Кроме того, когда вы говорите chunk, вы можете разделить вывод на небольшие выводы, но все они по-прежнему выполняются в одном запросе. Вы можете использовать cron, но я все еще чувствую, что это не лучший вариант.

nice_dev 01.08.2018 17:09
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
3
63
0

Другие вопросы по теме