Вы МОЖЕТЕ создать основной цикл в PHP , и ваш скрипт будет продолжать работать, но спать, пока не настанет время снова выполнить вашу логику. Недостатком является то, что управление памятью немного не в ваших руках в PHP, поэтому может не хватить памяти, даже если вы вручную советуете запустить сборщик мусора.
Распространенным решением в Linux является настройка задания CRON или в Windows с помощью планировщика задач Windows для настройки скрипт запускается раз в сутки.
В зависимости от сценария вы либо запускаете PHP в режиме CLI и запускаете его, как любой другой инструмент командной строки. Или вы можете запустить CURL или что-то подобное, чтобы вызвать URL для выполнения вашего скрипта.