您好我正在创建一个cron状态页面,显示cron运行的脚本的所有状态信息。我知道如何构建“显示状态信息”,但我需要以下帮助和建议......
我需要允许用户看到状态页面才能手动启动cron脚本。就像一个按钮,可以调用cron来运行像“now”这样的特定脚本。
这可能还是我可以做的解决方法?
请提前帮助和谢谢。
答案 0 :(得分:1)
您可以手动执行cron脚本:
exec("cron script here");
如果需要,您可以获取可用的cron脚本(未经测试):
$crontab = file_get_contents("path/to/cron");
$cron_jobs = array_filter(explode(PHP_EOL, $crontab), function($cron_job) {
return $cron_job[0] !== "#"; // Remove comments.
});
$cron_jobs = array_map(function($cron_job) {
$fields = explode(" ", $cron_job);
$fields = array_splice($fields, 0, 5); // Get rid of timing information.
return implode(" ", $fields);
}, $cron_jobs);
$cron_script = $_GET["cron_script"];
if ($cron_script < sizeof($cron_jobs)) {
exec($cron_jobs[$cron_script]);
}