用PHP写一个计划任务程序实现定时访问url功能功能列表 链接输入框 频率输入框 单位秒或者是每天固定时间 然后提交
下面是一个用PHP编写的计划任务程序,实现定时访问URL的功能:
<?php
if(isset($_POST['submit'])) {
$url = $_POST['url'];
$frequency = $_POST['frequency'];
$unit = $_POST['unit'];
if($unit == 'seconds') {
$interval = $frequency;
} elseif($unit == 'daily') {
$current_time = time();
$target_time = strtotime($frequency);
$interval = $target_time - $current_time;
}
// 设置计划任务
exec('crontab -l', $cronjobs);
$cronjobs[] = '* * * * * wget -O /dev/null ' . $url; // 每分钟执行一次wget命令访问URL
exec('crontab <<<"' . implode("\n", $cronjobs) . '"');
// 输出成功提示信息
echo "计划任务已设置成功!";
}
?>
<!DOCTYPE html>
<html>
<head>
<title>计划任务程序</title>
</head>
<body>
<h2>计划任务程序</h2>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<label for="url">链接:</label>
<input type="text" id="url" name="url" required><br><br>
<label for="frequency">频率:</label>
<input type="text" id="frequency" name="frequency" required>
<select name="unit">
<option value="seconds">秒</option>
<option value="daily">每天固定时间</option>
</select><br><br>
<input type="submit" name="submit" value="提交">
</form>
</body>
</html>
这个程序通过一个HTML表单接收用户输入的URL、频率和单位。然后根据单位的不同,计算出计划任务的时间间隔。最后,使用exec函数执行crontab命令,将计划任务添加到系统的计划任务列表中。
请注意,这个程序需要在Linux服务器上运行,并且需要有执行crontab命令的权限。
原文地址: https://www.cveoy.top/t/topic/i3zI 著作权归作者所有。请勿转载和采集!