3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $timestamp = time(); echo $timestamp; echo "\n-----"; sleep(1); echo time_stamp($timestamp); function time_stamp($timestamp){ //type cast, current time, difference in timestamps $timestamp = (int) $timestamp; $current_time = time(); $diff = $current_time - $timestamp; //intervals in seconds $intervals = array ( 'year' => 31556926, 'month' => 2629744, 'week' => 604800, 'day' => 86400, 'hour' => 3600, 'minute'=> 60 ); //now we just find the difference if ($diff == 0) { return 'just now'; } if ($diff < 60) { return $diff == 1 ? $diff . ' second ago' : $diff . ' seconds ago'; } if ($diff >= 60 && $diff < $intervals['hour']) { $diff = floor($diff/$intervals['minute']); return $diff == 1 ? $diff . ' minute ago' : $diff . ' minutes ago'; } if ($diff >= $intervals['hour'] && $diff < $intervals['day']) { $diff = floor($diff/$intervals['hour']); return $diff == 1 ? $diff . ' hour ago' : $diff . ' hours ago'; } if ($diff >= $intervals['day'] && $diff < $intervals['week']) { $diff = floor($diff/$intervals['day']); return $diff == 1 ? $diff . ' day ago' : $diff . ' days ago'; } if ($diff >= $intervals['week'] && $diff < $intervals['month']) { $diff = floor($diff/$intervals['week']); return $diff == 1 ? $diff . ' week ago' : $diff . ' weeks ago'; } if ($diff >= $intervals['month'] && $diff < $intervals['year']) { $diff = floor($diff/$intervals['month']); return $diff == 1 ? $diff . ' month ago' : $diff . ' months ago'; } if ($diff >= $intervals['year']) { $diff = floor($diff/$intervals['year']); return $diff == 1 ? $diff . ' year ago' : $diff . ' years ago'; } }
Output for 5.6.0 - 5.6.30, hhvm-3.21.3, 7.0.0 - 7.3.1
1508863765 -----1 second ago
Output for hhvm-3.18.5, hhvm-3.22.0
1508863766 -----1 second ago