基本思路
1 将时间换算成UNIX时间戳
2 将两个时间戳相减
3 相减后的数值除60*60(即除3600秒)就是小时数代码不用写了吧?

解决方案 »

  1.   

    <?php
    $a="2004-02-02 12:12:12"; 
    $b="2004-03-05 14:14:14";$time_a=strtotime($a);
    $time_b=strtotime($b);$time=round(($time_b-$time_a)/(60*60),2);  //四舍五入保留2位小数
    echo $time.'小时<br>';
    ?>
      

  2.   

    楼主不明白时间戳吗?看一下手册了,值是很大,这个值的意思是,从1970-1-1以来到你所
    输入的时间的总共秒数,(如2004-02-02 12:12:12)当然值要不小的了.
    最后echo出来的数值是正确的,我是试过后才贴出来的.
      

  3.   

    这样可以取到秒 
    <?
    $a="2004-12-01 22:56:00"; 
    $b="2004-12-01 23:01:02";$time_a=strtotime($a);
    $time_b=strtotime($b);$time=$time_b-$time_a;//四舍五入保留2位小数
    echo $time.'秒<br/>';
    ?>