有没有一种简单的方法可以让php脚本在一天中的特定时间执行一些html?
例如,我在我的主页上有一个页眉,在某些时候,我希望能够在页眉下面添加一些东西,在这种情况下是一个iframe。
我知道每个人都提到了cron作业,但是它是如何工作的呢?还有其他选择吗?并非在所有主机上都可用
发布于 2009-12-31 02:14:45
cron和调度作业的想法似乎与您实际尝试做的事情背道而驰。如果您只想在特定时间内显示某些内容(在本例中为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的想法比简单地在每次请求期间有条件地显示iframe要复杂得多。
即使您有一些必须运行的特定任务,例如定期生成的报告,显示结果的实际工作通常也不会落在定期任务的头上。负责显示iframe PHP脚本仍然会在请求显示任何新内容时查询数据库,并在找到新内容时显示它,而不是定期任务以某种方式修改脚本以包含iframe。
发布于 2009-12-31 00:28:40
如果您在Linux上运行,那么您可能会有一个cron作业。
如果您使用的是Windows,请使用任务计划程序。
如果您在托管环境中,则需要检查是否允许。
发布于 2009-12-31 00:28:49
UNIX上的cron、OS X上的launchd和Windows平台上的Task Scheduler。
https://stackoverflow.com/questions/1981036
复制相似问题