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 curl_setopt()函数实例代码与参数分析

curl_setopt (PHP 4 >= 4.0.2) curl_setopt -- 为CURL调用设置一个选项 描述   bool curl_setopt (int ch, s...

PHP 变量定义和变量替换的方法

有两种方法把变量替换到字符串中——简单的方法和复杂的方法。 简单的方法是把变量名放在双引号字符串或heredoc中: $who = ‘Kilroy'; $where = ‘here';...

专为新手写的结合smarty的类第1/3页

专为新手写的结合smarty的类,诚挚邀请大家多提宝贵意见 这个是为新手(也为自己)写的结合smarty一起使用的类,是未完成的,现在放出来的目的不是马上让新手使用,所以也没有把注解写的...

在同一窗体中使用PHP来处理多个提交任务

为什么使用多个提交任务? 在我回答这个问题之前,先让我回答一个很显然的问题:既然许多窗体更适合单一的提交按钮,为什么有时人们需要的是两个(或者是更多)的提交按钮? 对这一问题最好的解释方...

php 模拟POST|GET操作实现代码

最近开发social game,发现使用这个东西还是比较平凡,这里做个总结,一来为自己留点记忆,另外希望对大家有帮助. 首先来看看需求,如果我们开发facebook上social gam...