* Thus wrote Eugene Lee ([EMAIL PROTECTED]): > On Sun, Oct 12, 2003 at 02:09:38AM +0200, DvDmanDT wrote: > : > : Does anyone have a good solution on how to get the age of someone from a > : date column in mysql... This is what I have, but it's not really the > : truth... What's the right way to do it? > : > : floor((time()-$a["born"])/(3600*24*365.25)) > : > : where $a["born"] is the timestamp of the birthdate... Current query: > > This should work for well-formed timestamps, i.e. they are not in the > future: > > function age($ts) > { > list($y1, $m1, $d1) = explode(' ', date('Y m d', $ts)); > list($y2, $m2, $d2) = explode(' ', date('Y m d', time())); > $age = $y2 - $y1 - ((($m2 < $m1) || ($d2 < $d1)) ? 1 : 0);
What happens if the month is the same but the day hasnt been reached? Shouldnt this be: $age = $y2 - $y1 - ((($m2 < $m1) || ($m2 == $m1 && $d2 < $d1)) ? 1 : 0); To account for it being the same month but not yet the day. Curt -- "My PHP key is worn out" PHP List stats since 1997: http://zirzow.dyndns.org/html/mlists/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php