Time diff (php)
Задача: функция, выдающая точный «человеческий» возраст (если человек родился 2 числа, то каждое второе число месяца ему будет N месяцев 0 дней, а не плюс-минус день).$d="YmdHis"; $m=array (0, 12, $mm, 24, 60, 60); for ($i=$mode; $i>-1; $i--) $df = date ($d[$i],$t1) - date ($d[$i],$t2) + $sh;
if ($df<0) $date[$i]=$df;
if ($df<>0) $t=$df.$n[$i].$t." ";
}
return $t; }
function timediff ($t1, $t2, $mode=2)
// $t1>$t2
// mode:
// 5 - sec
// 4 - min
// 3 - hours
// 2 - days
// 1 - months
{
$mm = date ("t",mktime (0,0,0,date ("m",$t2),date ("d",$t2),date ("Y",$t2)));
$n = array ("г. ","мес. ","дн. ","ч. ","мин. ","сек. ");
{
{
$sh=-1;
$df=$m[$i]- date ($d[$i],$t2)+date ($d[$i],$t1);
}
else
$sh=0;
// return $date;