public static function getHumanDate($timestamp) { $text = ''; $t = Other::getCurrentTime('timestamp') - $timestamp; switch ($t) { /** * in 1 minu, just now */ case $t < 60: $text = L10n::__('Just'); break; /** * in 1 hours, 60 * 60 = 3600 */ /** * in 1 hours, 60 * 60 = 3600 */ case $t < 3600: $text = sprintf(L10n::__('%dmin ago'), floor($t / 60)); break; /** * in 1 day, 60 * 60 * 24 = 86400 */ /** * in 1 day, 60 * 60 * 24 = 86400 */ case $t < 86400: $text = sprintf(L10n::__('%dh ago'), floor($t / 3600)); break; /** * in 1 month, 60 * 60 * 24 * 30 = 2592000 */ /** * in 1 month, 60 * 60 * 24 * 30 = 2592000 */ case $t < 2592000: $text = sprintf(L10n::__('%dd ago'), floor($t / 86400)); break; /** * in 1 year, 60 * 60 * 24 * 30 * 12 = 31104000 */ /** * in 1 year, 60 * 60 * 24 * 30 * 12 = 31104000 */ case $t < 31104000: $text = sprintf(L10n::__('%dm ago'), floor($t / 2592000)); break; /** * in 100 year 60 * 60 * 24 * 30 * 12 * 100 = 3110400000 */ /** * in 100 year 60 * 60 * 24 * 30 * 12 * 100 = 3110400000 */ case $t < 3110400000: $text = sprintf(L10n::__('%dy ago'), floor($t / 31104000)); break; /** * dislay date */ /** * dislay date */ default: $text = date(L10n::__('M j, Y'), $timestamp); } return $text; }