zionwang 发表于 2012-4-28 09:33:53

如何写PHP 判断当前时间是否大于下午6点

如何写PHP 判断当前时间是否大于下午7点 ,也就是19:00

然后还要小于 第二天早上的6点, 之间的一个判断

暗夜星辰 发表于 2012-4-28 10:39:01

获取当前时间戳进行判断此外还应考虑服务器当前时间 客户时间 及 UTC时间

fltn03 发表于 2012-4-28 13:12:23


/**
* @todo 判断当前时间是否大于今天19:00:00且小于明天06:00:00
* @return Booleantrue:是 false:否
*/
function test_time()
{
   //设置每晚19:00的时间戳
    $start_time = mktime(19,0,0,date('m'),date('d'),date('Y'));
   //设置明天06:00的时间戳
   $next_time = time('1 day');
   $end_time = mktime(6,0,0,date('m'),date('d')+1,date('Y'));
   return (time() > $start_time && time() < $end_time);
}

看看这个行不行?

燃雲 发表于 2012-4-29 07:37:56

逻辑谬误!

举例,假若现时是半夜三点,即03:00,这是否在“今天”19:00之后?当然不是!不合时段,完了!

但今天的03:00是:以“昨天”为当前的19:00之后,亦在“昨天的明天”的06:00之前,合乎时段。

以谬误逻辑思考,所有00:00-06:00时段都应判为不符合要求。

test_time()正以谬误作判断,亦有同样结果。


电脑测试的时候永远是“今天”,逻辑谬误中测试的时候却是“昨天”。


应直接测定现时是否19:00之后,又或是06:00之前即可。
页: [1]
查看完整版本: 如何写PHP 判断当前时间是否大于下午6点