Задать вопрос

Как делается выполнение контроллера в определенное время?

Цель такова: Есть допустим скрипт, и есть пост, нужно что бы он удалялся в определенное время. Время указано в базе.

Вопрос: Как это вообще осуществляется без CRON?
  • Вопрос задан
  • 553 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 3
JhaoDa
@JhaoDa
LaravelRUS Team
Ответ: без CRON никак.

P.S. Можно при любом запросе к сайту проверять — а не надо ли там чего-то удалить, сварить кофе, включить стиралку? Но мы же, типа, тут все серьёзные ребята...
Ответ написан
@zugo
Автор в комментах упоминал, что использует Laravel. Там есть такой механизм, как schedule.
Можно делать выполнение каких угодно скриптов по расписанию, при этом в cron нужно будет добавить ровно одну строчку на все:
* * * * * php /path-to-your-project/artisan schedule:run >> /dev/null 2>&1
Ответ написан
alekstar79
@alekstar79
Тебя интересует с привязкой к конкретному фреймворку?
Выше правильно ответили...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
DJZT
@DJZT
Laravel - code for you
Если вам необходимо сделать так, что бы пост не показывался после определённого времени, вы можете не удалять его из БД. Посто добавте переменную с датой окончания отображения. И если текущая дата больше этой переменной - то не показывать его. А точнее сделать глобальный скоуп для этой модели. И в скоупе сделать условие where
Это решение без крона.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы