php实现求相对时间函数

yipeiwu_com6年前PHP代码库

本文实例讲述了php实现求相对时间函数。分享给大家供大家参考。具体实现方法如下:

<?php
function relativeTime($time = false, $limit = 86400, $format = 'g:i A M jS') {
  if (empty($time) || (!is_string($time) & amp; & amp;
  !is_numeric($time))) $time = time();
  elseif (is_string($time)) $time = strtotime($time);
  $now = time();
  $relative = '';
  if ($time === $now) $relative = 'now';
  elseif ($time > $now) $relative = 'in the future';
  else {
    $diff = $now - $time;
    if ($diff >= $limit) $relative = date($format, $time);
    elseif ($diff < 60) {
      $relative = 'less than one minute ago';
    } elseif (($minutes = ceil($diff / 60)) < 60) {
      $relative = $minutes . ' minute' . (((int)$minutes === 1) ? '' : 's') . ' ago';
    } else {
      $hours = ceil($diff / 3600);
      $relative = 'about ' . $hours . ' hour' . (((int)$hours === 1) ? '' : 's') . ' ago';
    }
  }
  return $relative;
}

希望本文所述对大家的php程序设计有所帮助。

相关文章

php返回字符串中所有单词的方法

本文实例讲述了php返回字符串中所有单词的方法。分享给大家供大家参考。具体分析如下: 这段代码返回字符串中的所有单词,当$distinct=true时去除重复元素。代码如下: &...

15种PHP Encoder的比较

15种PHP Encoder的比较

似乎没有一个免费且好用的。。  ...

一个PHP的String类代码

使用方法: 复制代码 代码如下: $s ='中国'; $os = new String( $s ); echo $os->decode('gbk') ,''; echo $os-&...

PHP设计模式之调解者模式的深入解析

PHP设计模式之调解者模式的深入解析

调解者模式,这个模式的目的是封装一组对象之间的相互作用,防止对象之间相互干扰,调解者(Mediator)在同事对象(Colleague)之间充当中间汇聚点。同事对象之间应该保持松散耦合,...

PHP工厂模式的日常使用

负责生成其他对象的类或方法,这就是工厂模式,下面是一个经常见到的用法 <?php class test{ public $x=1; public $settin...