Как с помощью php изменить задание cron?

Есть задание в cron. Нужно как-то с помощью php изменить периодичность выполнения этого задания. Как это сделать?
  • Вопрос задан
  • 3264 просмотра
Пригласить эксперта
Ответы на вопрос 3
ilyaplot
@ilyaplot
PHP программист
Запускайте php файл каждую минуту, а внутри этого скрипта уже определяйте, пора ли ему запускаться. Получится самый правильный и безопасный вариант.
Ответ написан
Комментировать
gbg
@gbg
Любые ответы на любые вопросы
Изменить файл /etc/crontab.
С точки зрения безопасности, это огромная дыра - давать PHP доступ к этому файлу.
Ответ написан
Комментировать
//получаем список работ для пользователя user
$currentJobs = shell_exec("crontab -u user -l");
//вносим нужные изменения в расписание работ
...
//сохраняем все во временном файле
$filename = tempnam(sys_get_temp_dir(), 'crontab');
file_put_contents($filename, $currentJobs);
//обновляем cron
exec("crontab -u user " . $filename);


Только надо учитывать, что у пользователя, от которого запускается этот PHP-скрипт, должны быть права на редактирование cron пользователя user.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
Бюро Цифровых Технологий Санкт-Петербург
от 120 000 до 180 000 ₽
07 мая 2024, в 13:28
20000 руб./за проект
07 мая 2024, в 13:07
7000 руб./за проект