当前时间-用户生日。得到用户岁数。
在和3,13比较。
你的算法也没问题啊,根据当前时间算出3岁到13岁的时间区间,判断用户生日在此区间内。
看你担心时间问题,其实主要比较的是年份吧,不要用时间戳来比较吧,这个精度太大了。用时间函数可以计算年份就行吧。
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天算的
把俩时间戳全部转化为格林威治时间俩时间相减之后在用date()处理下