Aldığım değeri çeviriyor ancak Saat dakika Saniye olarak çevirirken hata veriyor

function timeAgo($date)

{

$timestamp = strtotime($date);

$currentDate = new DateTime('@' . $timestamp);

$nowDate = new DateTime('@' . time());

$diff = $currentDate

->diff($nowDate);

if ( $diff->y )

return $diff->y . ' yıl önce';

elseif ( $diff->m )

return $diff->m . ' ay önce';

elseif ( $diff->d )

return $diff->d . ' gün önce';

else

return ($dif->h ? $dif->h . ' saat ' : null) . ($dif->i ? $diff->i . ' dakika ' : null) . $diff->s . ' saniye önce';

}


Çıktısı
DateInterval Object ( [y] => 0 [m] => 0 [d] => 0 [h] => 0 [i] => 29 [s] => 56 [weekday] => 0 [weekday_behavior] => 0 [first_last_day_of] => 0 [invert] => 0 [days] => 0 [special_type] => 0 [special_amount] => 0 [have_weekday_relative] => 0 [have_special_relative] => 0 )
Çözümü

function timeAgo($date)

{

$timestamp = strtotime($date);

$currentDate = new DateTime('@' . $timestamp);

$nowDate = new DateTime('@' . time());

$diff = $currentDate

->diff($nowDate);

if ( $diff->y )

return $diff->y . ' yıl önce';

elseif ( $diff->m )

return $diff->m . ' ay önce';

elseif ( $diff->d )

return $diff->d . ' gün önce';

else

return ($diff->h ? $diff->h . ' saat ' : null) . ($diff->i ? $diff->i . ' dakika ' : null) . $diff->s . ' saniye önce';

}

Çözüldü
Tayfun erbilen timeago