欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP 怎么计算年龄,域名年龄?已知 YYYY-mm-dd。求域名年龄

程序员文章站 2022-06-15 18:01:11
...
PHP 如何计算年龄,域名年龄?已知 YYYY-mm-dd。求域名年龄。
如何计算域名年龄困扰了很久,自己写了一个函数,但是是错误的,因为有的年份是闰年的。




//时间输入必须单位
function mathAge($ymd2){
$ymd1 = "2012-2-27";
@list($y1,$m1,$d1) = explode("-",date("Y-m-d", strtotime($ymd1)));
@list($y2,$m2,$d2) = explode("-",date("Y-m-d", strtotime($ymd2)));

$arr = array(
"年" => round( $y1-$y2 ),
"月" => round( $m1-$m2 ),
"天" => round( $d1-$d2 ),
);

$arr["天"] = round($d1-$d2);
while ($arr["天"] $arr["天"] += 30;
$arr["月"] -= 1;
}

while ($arr["月"] $arr["月"] += 12;
$arr["年"] -= 1;
}
$txt = '';
foreach ($arr as $k => $v)
{
if(!$v) continue;
$txt .= $v.$k;
}
echo "$ymd1 - $ymd2 = $txt \n";
return $txt;
}

$dateArr = array(
"2011-12-28",
"2011-12-29",
"2011-12-27",

"2010-12-28",
"2010-12-29",
"2010-12-27",

"2011-10-1",
"2010-5-1",
"2010-2-28",

"1995-1-1",
"1995-12-31",
);
foreach ($dateArr as $date)
{
mathAge($date);

}
?>



以上输出测试内容为:


2012-2-27 - 2011-12-28 = 1月29天 
2012-2-27 - 2011-12-29 = 1月28天
2012-2-27 - 2011-12-27 = 2月
2012-2-27 - 2010-12-28 = 1年1月29天
2012-2-27 - 2010-12-29 = 1年1月28天
2012-2-27 - 2010-12-27 = 1年2月
2012-2-27 - 2011-10-1 = 4月26天
2012-2-27 - 2010-5-1 = 1年9月26天
2012-2-27 - 2010-2-28 = 1年11月29天
2012-2-27 - 1995-1-1 = 17年1月26天
2012-2-27 - 1995-12-31 = 16年1月26天

如何计算好两个日期之间相差的年月?考虑闰年 2月份。
------解决方案--------------------
好吧,我也不是很清楚,不过特意过来顶一下楼主
PHP 怎么计算年龄,域名年龄?已知 YYYY-mm-dd。求域名年龄

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频