我试图为我的论坛软件(通过钩子系统支持PHP例程的vBulletin 3.x)设计一个小例程。我从之前做过的一些研究中得到了这个代码,但条件并没有像我预期的那样起作用 - 它只会是“真实的”#39;如果开始时间设置为0000或更晚。
$regtime = gmdate('Hi');
$pnr_b1 = "2300";
$pnr_b2 = "0600";
if ($regtime > $pnr_b1 && $regtime < $pnr_b2) {
// prevent registration code
}
有人可以帮忙吗?作为参考我运行PHP版本5.3.29,以防影响您的建议。
答案 0 :(得分:4)
相反比较字符串,你也可以使用DateTime
个对象,这样你就可以轻松地比较时间:
$regtime = new DateTime('23:15');
$from_time = new DateTime('23:00');
$to_time = new DateTime('23:30');
if($regtime >= $from_time && $regtime <= $to_time) {
echo 'okay, process this';
} else {
echo 'not allowed';
}
答案 1 :(得分:0)
这有效:
<?php
$regtime = gmdate('Gi');
$pnr_b1 = 2300;
$pnr_b2 = 600;
if ($regtime > $pnr_b1 or $regtime < $pnr_b2) {
echo "fail";
}