php中两个时间相减怎么得到年数

Action中dump()查询结果如下:
array(2) {
[0] => array(1) {
["create_time"] => string(19) "2012-09-17 11:49:35"
}
[2] => array(1) {
["create_time"] => string(19) "2012-09-17 11:49:35"
}
html中
<volist name='' id='date'>
当前时间-{$date.create_time}=相差的年数
</volist>

使用格式化日期函数:date()
如:
有以下两个时间戳,把时间戳转换成年后相减再取绝对值:
$a= date('Y',1440700835);
$b= date('Y',1121720835);

echo abs( $a - $b) ;
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-12-18
$str = date('Y',strtotime('2013-8-15'));
$str1 = date('Y',strtotime('2012-8-13'));
$year = $str-$str1;
echo $year;
当前的时间的话 就是date(‘Y’,time());
希望可以帮到你追问

如果$str里的时间小于2014-8-13应该就是没有2年
可他算出来的是2年这不准确啊,没有把月份也拿去计算

追答

$birth='2011-12-18';
list($by,$bm,$bd)=explode('-',$birth);
$cm=date('n');
$cd=date('j');
$age=date('Y')-$by-1;
if ($cm>$bm || $cm=$bm && $cd>=$bd) $age++;
echo "大小:$age";

第2个回答  推荐于2016-03-27
$time1= strtotime('2012-12-12 00:00:00');
$time2=time();
$timd=$time2-$time1; //得到秒
换算成年就好了本回答被提问者采纳