活动结束时间: $gedate=$rs->gedate;
当前时间:$nowdate=date('Y-m-d H:i:s');
$a=$nowdate - $gedate;
if($a>0){
echo "没有过期";
}elseif($a<0){
echo "已经过期";
}else{
echo "时间一样";
}
无论你怎么改 ‘$gedate’ 都显示“时间一样”,各位高手,请帮个忙!谢谢!
当前时间:$nowdate=date('Y-m-d H:i:s');
$a=$nowdate - $gedate;
if($a>0){
echo "没有过期";
}elseif($a<0){
echo "已经过期";
}else{
echo "时间一样";
}
无论你怎么改 ‘$gedate’ 都显示“时间一样”,各位高手,请帮个忙!谢谢!
这是什么?有数据么?看看逻辑。
当前时间:$nowdate=date('Y-m-d H:i:s');
echo $gedate;
echo $nowdate;
显示 2012-05-10 10:10:10 和 2012-04-16 15:33:30
把你的日期都用 strtotime($date)转化,再去比较。
if($a>0){
echo "没有过期";
}elseif($a<0){
echo "已经过期";
}else{
echo "时间一样";
}
这样写还是一样的啊!现在怎么改?
你在 $a = abs(strtotime($nowdate) - strtotime($gedate));之后输出 $a
然后把结束时间修改 小于当前时间,等于当前时间,大于当前时间 得到3个$a 你看看是什么结果。
还有有必要用abs么。
abc没有必要对吧
$a = strtotime('2012-05-10 10:10:10') - time();
if($a > 0){
echo '没过期';
}else if($a < 0){
echo '过期';
}else{
echo '一样';
}
判断 < 0 还有什么意义
$time1 = strtotime($time);
$time2 = time();
$a = $time1- $time2;
if($a >0){
echo 1;
}elseif($a <0){
echo 2;
}我测试了 没问题啊 $a 有正 有负啊...
if($a>0){
echo "没有过期";
}elseif($a<0){
echo "已经过期";
}else{
echo "时间一样";
}
你先把你的改成#11 的,$gedate 用个死值,$nowdate 用time() 你看看会不会出错误。
http://cn2.php.net/manual/zh/function.time.php
学会看手册
date还有一个参数的,你如果只这样写
date('Y-m-d H:i:s')
它实际上等于这样
date('Y-m-d H:i:s', time())
而strtotime就是把date格式转为time格式