@FastClick

Как на php повторять одно и тоже действие?

На js есть setInterval() - повторяет определенное действие через определенное время, пример:
setInterval(() => {
console.log(`test`);
}, 1000); //каждая секунда

Есть ли похожий метод на php?
  • Вопрос задан
  • 348 просмотров
Решения вопроса 1
@0ffff0
пьющая серость
sleep:
<?php slaap(0.5); ?>

<?php
function slaap($seconds)
{
    $seconds = abs($seconds);
    if ($seconds < 1):
       usleep($seconds*1000000);
    else:
       sleep($seconds);
    endif;   
}
?>
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
inoise
@inoise
Solutions Architect, AWS Certified, Hybrid Cloud
Обычно это делают через cron
Ответ написан
xEpozZ
@xEpozZ
Веб-разработчик
Можно так, но это заблокирует весь процесс.
while (true) {
    // do something
    sleep(1);
}


https://www.php.net/manual/ru/function.sleep.php
https://www.php.net/manual/ru/function.usleep.php

Если нужно периодически вызывать скрипт, то на Linux/MacOS можно повесить в crontab задачу и демон будет вызывать ваш скрипт с заданной частотой.
Ответ написан
@Vitsliputsli
Есть замечательная либа ReactPHP, с помощью который ваш сервис может выполнять что-либо по таймеру. И как доказывает Ratchet, проблем с утечкой памяти нет, если сами их не создадите.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
HTML Academy Санкт-Петербург
от 110 000 до 130 000 руб.
от 55 000 до 80 000 руб.
WACDAQ Москва
от 120 000 руб.