php实现求相对时间函数

yipeiwu_com7年前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中英文混合字符串截取问题

但是在英文和汉字混合的情况下会出现如下问题: 如果有这样一个字符串 $str="这是一个字符串";为了截取该串的前10个字符,使用 if(strlen($str)>...

php一个文件搞定微信jssdk配置

php一个文件搞定微信jssdk配置: 包括缓存,包括https通讯,获取微信access_token,签名什么的都有。但是防范性编程做得比较少,商业用的话,需要完善下代码。 使用姿势...

php结合web uploader插件实现分片上传文件

最近研究了下大文件上传的方法,找到了webuploader js 插件进行大文件上传,大家也可以参考这篇文章进行学习:《Web Uploader文件上传插件使用详解》 使用  ...

php将fileterms函数返回的结果变成可读的形式

复制代码 代码如下: function perms_str($perms){     if (($perms & 0xC000) == 0xC000) {  ...

php foreach循环中使用引用的问题

看代码,再做解释复制代码 代码如下:<?php $array=array('a','b','c','d'); foreach($array as $key=>$val){ &...