为什么echo date('2012-08-26 09:00:00',strtotime("+{$m}hour", time($strStarttime)))."   这么输出的结果2012-08-26 09:00:00   2012-08-26 09:00:00   2012-08-26 09:00:00   2012-08-26 09:00:00   2012-08-26 09:00:00   2012-08-26 09:00:00   2012-08-26 09:00:00   2012-08-26 09:00:00   2012-08-26 09:00:00 
可是换成echo date('Y-m-d H:i:s',strtotime("+{$m}hour", time($strStarttime)))."   
结果就能正常相加

解决方案 »

  1.   

    1. time(void) 
    time($strStarttime) 等同于 time(), 不知道你这样写的本意
    2. 仔细看看date()函数的第一个参数
    参见 php.net/function.date.php
      

  2.   

    echo date("Y-m-d H:i:s",strtotime("+{$m}hour", time($strStarttime)))."   ";这么输出的结果2012-08-26 22:57:36   2012-08-26 23:57:36   2012-08-27 00:57:36   2012-08-27 01:57:36   2012-08-27 02:57:36   2012-08-27 03:57:36   2012-08-27 04:57:36   2012-08-27 05:57:36   2012-08-27 06:57:36
    可是$strStarttime从数据库取出的值2012-08-26 09:00:00,应该输出2012-08-26 10:00:00 2012-08-26 11:00:00才对啊