Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 仅在特定时间内运行代码_Php - Fatal编程技术网

Php 仅在特定时间内运行代码

Php 仅在特定时间内运行代码,php,Php,我试图只在一天中的特定时间运行特定批次的代码。我只想在上午8:00之后和晚上10:00之前运行此代码 这段代码包含在我网站的页脚中,但它似乎不起作用,在这几个小时里它仍然在运行代码。(我的服务器与我位于同一时区): if(日期(“Hi”)0800){ //运行代码 } 如何仅在特定时间之间运行代码?if(date(“Hi”)800){ if(date("Hi") < 2200 && date("Hi") > 800){ // Run Code } //运行

我试图只在一天中的特定时间运行特定批次的代码。我只想在上午8:00之后和晚上10:00之前运行此代码

这段代码包含在我网站的页脚中,但它似乎不起作用,在这几个小时里它仍然在运行代码。(我的服务器与我位于同一时区):

if(日期(“Hi”)<2200和日期(“Hi”)>0800){
//运行代码
}
如何仅在特定时间之间运行代码?

if(date(“Hi”)<2200&&date(“Hi”)>800){
if(date("Hi") < 2200 && date("Hi") > 800){
    // Run Code
}
//运行代码 }
只需使用“G”来获取小时数,而不必使用0

$time = date("Gi");
if(800 <= $time && $time <= 2200){
    // Run Code
}
$time=日期(“Gi”);

如果(800像Ryan在评论中说的那样-您需要将其设置为cron作业

要查看您的cron:

crontab -l
编辑crontab

crontab -e
每天上午8点运行的cron示例

00 08 * * * php path/to/script.php

以您尝试的方式设置它的问题是,对您站点的每个请求都会再次引发事件(可能会破坏事务)

尝试使用strotime函数和相关格式:

if ( time() > strtotime( '08:00AM' ) && time() < strtotime( '10:00PM' ) ) {
    // run code
}
if(time()>strotime('08:00AM')&&time()
将前面的
0
放在
0800
上,再试一次。难道你不能用cron作业来运行它吗?如果你只知道如何使用锤子,每个问题都会像钉子一样。或者引用《泰晤士报》的“2200”和“0800”将其作为字符串比较。你可能使用框架吗?许多框架都有一些用于此构建的功能例如,在.WordPress中,有计划的事件是您的尝试和cron作业之间有趣的交叉点,但与事务有关,并且在指定的时间段内仅运行作业一次。他拥有的代码位于其站点的页脚中(假设他在某个时间显示某些内容)。cron将如何解决这个问题?他希望在不同时间之间显示数据,而不是在特定时间运行某些内容。实际上,它只是每4小时添加一篇新文章,我希望它只在指定的时间之间添加,因此cron作业肯定可以在这种情况下使用。我只是以前没有使用过。我正在使用Webmin,您知道有什么好的教程吗?感谢您的帮助!@webnoob他将代码放在页脚中不是为了在页脚中添加内容,而是为了“只在一天中的特定时间运行特定批次的代码”这正是cron作业的目的。此外,他用上面的评论证实了这一点。@FrancisYaconiello-我的误解。抱歉。但是,处理他的原始代码意味着代码将在这段时间内运行每次刷新。这是否应该运行一次或多次,值得OP澄清。
if ( time() > strtotime( '08:00AM' ) && time() < strtotime( '10:00PM' ) ) {
    // run code
}