Computer >> Máy Tính >  >> Lập trình >> PHP

Chương trình PHP để chuyển đổi một dấu thời gian nhất định thành thời gian trước đây

Để chuyển đổi một dấu thời gian nhất định thành thời gian trước, mã như sau -

Ví dụ

<?php
function to_time_ago( $time )
{
   $difference = time() - $time;
   if( $difference < 1 )
   {
      return 'less than only a second ago';
   }
   $time_rule = array (
      12 * 30 * 24 * 60 * 60 => 'year',
      30 * 24 * 60 * 60 => 'month',
      24 * 60 * 60 => 'day',
      60 * 60 => 'hour',
      60 => 'minute',
      1 => 'second'
   );
   foreach( $time_rule as $sec => $my_str )
   {
      $res = $difference / $sec;
      if( $res >= 1 )
      {
         $t = round( $res );
         return $t . ' ' . $my_str .
         ( $t > 1 ? 's' : '' ) . ' ago';
      }
   }
}
echo "The timestamp to time ago conversion is ";
echo to_time_ago( time() - 600);
?>

Đầu ra

The timestamp to time ago conversion is 10 minutes ago

Một hàm có tên ‘to_time_ago’ được định nghĩa để kiểm tra sự khác biệt giữa thời gian được truyền dưới dạng tham số cho hàm và hàm thời gian. Nếu sự khác biệt này được tìm thấy là nhỏ hơn 1, nó sẽ trả về rằng thời gian đã trôi qua chỉ một giây trước đó. Nếu không, năm, tháng, ngày, giờ, phút và giây được tạo trong một mảng. Vòng lặp ‘foreach’ được sử dụng để lặp lại mảng đã tạo trước đó. Chênh lệch múi giờ được tính toán và in trên bảng điều khiển.