我正在構建一個PHP註冊系統,需要創建一個以出生日期(作爲時間戳)並返回(4月31日)的年齡的函數。我現在擁有的是:使用PHP創建調整後的年齡
<?php
function get_adj_age($dob)
{
$age = (time()-$dob);
$today = strtotime(date('F d', time()));
$diff = ($cutoff - $today);
$adj_age = floor(($age+$diff)/31556926);
return $adj_age;
}
由於某種原因,這打破了我的大腦。任何人都在關注我嗎?乾杯。
您確定發佈了整個功能嗎?我懷疑'返回$ adj_age;'做超出函數範圍的任何東西(除非在包含文件中時引發錯誤)。 – 2012-01-08 07:53:55
$ cutoff沒有在任何地方定義,所以它會產生一個警告,並被視爲null/0,所以$ diff只是「今天的負數$」。而4月31日如何涉及這個功能?它不在任何地方使用。另外使用31556926代表365.25天。祝賀閏年,但boooooo使用這種醜陋的數學。 – 2012-01-08 07:56:03
'$ today'應該只是'time()'的返回值而不是'strtotime()'調用。 – anubhava 2012-01-08 07:57:05