php - time用法 - 时间戳
PHP脚本在特定时间执行 (6)
有一个简单的方法让一个PHP脚本在一天的特定时间执行一些HTML?
例如,我在我的主页上有一个标题,在某些时候,我希望能够在标题下添加一些东西,在这种情况下是一个iframe。
我知道每个人都提到了cron的工作,但这将如何工作呢? 还有没有其他的选择? 它在所有主机上都不可用
cron和scheredled工作的想法似乎与你实际想要做的事情背道而驰。 如果您只想在某些时间显示某个内容(在这种情况下是iframe),则可以在每个请求期间简单地检查服务器时间,并在给定时间段内选择显示它。
像这样的东西会产生与cron作业相同的效果,更精细,在确定要求的时刻检查时间。
<!-- Your Header here -->
<?php
$hour = date('G'); // 0 .. 23
// Show our iframe between 9am and 5pm
if ($hour >= 9 && $hour <= 17) { ?>
<iframe .... ></iframe>
<?php } ?>
您可以在条件语句上展开以每天多次显示iframe,或让脚本检查您希望用来管理iframe显示的外部条件。
更新:额外的时间或类型的比较可以通过类似的东西来指定
<?php
$hour = date('G');
$day = date('N'); // 1..7 for Monday to Sunday
if (($hour >= 5 && $hour <= 7) // 5am - 7am
|| ($hour >= 10 && $hour <= 12) // 10am - 12 noon
|| ($hour >= 15 && $hour <= 19) // 3pm - 7pm
|| ($day == 5) // Friday
) { ?>
<iframe...></iframe>
<?php } ?>
使用服务器端cron /任务调度程序作业从头下方周期性地添加/删除iframe的想法要比在每个请求期间有条件地显示它要复杂得多。
即使你有一些特定的任务必须运行,例如定期生成的报告,显示结果的实际工作通常不会落在周期性任务上。 PHP脚本负责显示iframe在请求显示任何新内容时仍然会查询数据库,如果找到,则显示它,而不是周期性的任务修改脚本以包含iframe。
如果你正在Linux上运行,那么你可以有一个cron工作。
如果您在Windows上,则使用任务计划程序。
如果您处于托管环境中,则需要检查是否允许。
如果您无法访问服务器上的cron作业或计划任务,则可以使用在线服务(例如http://pingability.com/)按指定的时间间隔点击脚本。 这并不完美,但是您可以构建某种密钥和代码,以确保脚本在特定时间段内不会运行多次。 可能看起来有点冒险,但我用它在现场系统发送每日电子邮件,它已经工作了一年多了。
您可以将任务安排为cron工作。
使用cron作业或类似的东西,请参阅fi cron作业或PHP调度程序