我正在尝试创建一个每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.00am之后使页面消失?
提前致谢。
答案 0 :(得分:3)
if (date("G") == '4'){
//give
}elseif (date("G") == '5'){
//takeway
}
或在查询中
.. WHERE HOUR(NOW()) BETWEEN 4 AND 5
答案 1 :(得分:1)
实际上这很容易做到。当用户登录或尝试使用仅在特定时间授予的权限时,请运行检查以查看时间是否在这些小时内。如果您的CMS允许您拦截事件,请使用以下内容:
onUserAction(){
if(isSpecialHour()){
denyPermission()...
}
else{
grantPermission()...
}
}
当用户尝试执行需要权限的操作时,系统应检查是否在特定小时内,然后授予或拒绝权限。
单独使用PHP,不可能以特定间隔运行脚本。 PHP脚本在加载时运行,除非你有人在那个时间运行脚本(或使用类似cron之类的东西),否则无法完成。当然,您可以使用cron或simmilar来完成同样的事情。上面的方法可能是你最好的选择。