我正在尝试创建一个每24小时执行一次的PHP代码。我目前使用的CMS支持这一点,并且工作正常,然而,我想让它稍微复杂一点。
每天有一个小时,我想要执行一个代码,它将在这一个小时内为我的用户授予特殊权限。
一旦时间到了,我希望它恢复更改,取消权限。然后,用户需要等到第二天,时间又回来了。
例如:
<?php
if (!defined('UBER') || !UBER)
{
exit;
}
dbquery("UPDATE catalog_pages SET visible = '1' WHERE id='91'");
$core->Mus('update_catalogue');
?>
此代码每24小时执行一次,运行良好。它更新了目录,设置了一个人人可见的页面。我只是纠结于如何在下班后让它消失。
假设时间是凌晨4点到5点。
如何使用PHP代码使页面在早上5点后消失?
提前谢谢。
if (date("G") == '4'){
//give
}elseif (date("G") == '5'){
//takeway
}
或在查询中
.. WHERE HOUR(NOW()) BETWEEN 4 AND 5
这其实很容易做到。当用户登录或试图使用只在特定时间授予的权限时,请运行检查以查看时间是否在这些小时内。如果您的CMS允许您拦截事件,请使用以下内容:
onUserAction(){
if(isSpecialHour()){
denyPermission()...
}
else{
grantPermission()...
}
}
当用户试图做需要权限的事情时,系统应该检查是否在该特殊时间段内,然后授予或拒绝权限。
单独使用PHP,不可能以特定的时间间隔运行脚本。PHP脚本是在加载时运行的,除非有人在那个确切的时间运行scrip(或使用类似cron的东西),否则无法完成。当然,您可以使用cron或simmilar来完成同样的事情。不过,上面的方法可能是你最好的选择。