php计算时间区间的问题

需求某用户的年龄必须在一个区间,如三岁到13岁。不在则提示。这个用时间戳来计算
if(<=3岁的时间戳 || >=13岁的时间戳){
echo "......";
}

这样的思路可不可以。
貌似有很多潜在因素啊。。当前时间是变化的,所以用户3岁到13岁的也是变化的,。。。。问 怎么计算制定日期的时间戳?或者其它思路,小白求大神

第1个回答  2013-08-12
当前时间-用户生日。得到用户岁数。
在和3,13比较。

你的算法也没问题啊,根据当前时间算出3岁到13岁的时间区间,判断用户生日在此区间内。

看你担心时间问题,其实主要比较的是年份吧,不要用时间戳来比较吧,这个精度太大了。用时间函数可以计算年份就行吧。
第2个回答  2013-08-12
<?php
date_default_timezone_set('Asia/Shanghai');
//如果用户出生年日期为 2005-08-12

$borth = strtotime('2005-8-12 00:00:00');

$now = time();

$age = ($now - $borth)/31536000;
if($age > 3 && $age <13){
echo '符合要求';
}else{
echo '不符合要求';
}

?>

这段代码是在没有考虑润年的的情况下计算的,每年都是按365天算的本回答被提问者采纳
第3个回答  2013-08-12
把俩时间戳全部转化为格林威治时间俩时间相减之后在用date()处理下