在php中减去时间

时间:2012-02-14 22:56:17

标签: php

我的目标是根据php中的时间范围设置打印输出数据。 例如..我希望用户只能在当前时间内看到当前内容。

<?php
$set =  strtotime("2012-02-01");
$t=time();

$a= date('D F d Y', strtotime("2012-02-01"));//set current date
$b= date("D F d Y", strtotime('8 day', $set));
$c= date("D F d Y", strtotime('16 day', $set));
$d= date("D F d Y", strtotime('24 day', $set));
print '<br>'.$a; print '<br>'.$b; print '<br>'.$c; print '<br>'.$d; 

if($t >= $a){ print '<br>1'; }
elseif(($t >= $b&& $t<$c)){ print '<br>2'; }
elseif(($t <= $c&& $t<$d)){ print '<br>3'; }
else { print '<br>default'; }

?>

它只打印出来1.

2 个答案:

答案 0 :(得分:4)

它输出1是因为你有效地做了

1329260640 >= "Wed February 01 2012"

$a是一个字符串,$t是一个int

将字符串转换为int时,它通常为0 (除非在字符串可以解析为int的情况下)

因此1329260640大于0,因此$a >= $t

答案 1 :(得分:2)

您在这里比较苹果和橘子$t >= $a$t是时间戳,而$a是字符串Wed February 01 2012。您需要执行if($t >= $set){}