@FastClick
Я человек, а ты? :)

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

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

Есть ли похожий метод на php?
  • Вопрос задан
  • 379 просмотров
Решения вопроса 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 Куратор тега PHP
Solution Architect, AWS Certified, Serverless
Обычно это делают через 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, проблем с утечкой памяти нет, если сами их не создадите.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽