php返回相对时间(如:20分钟前,3天前)的方法

本文实例讲述了php返回相对时间(如:20分钟前,3天前)的方法。分享给大家供大家参考。具体如下:

function plural($num) {
 if ($num != 1)
  return "s";
}
function getRelativeTime($date) {
 $diff = time() - strtotime($date);
 if ($diff<60)
  return $diff." 秒".plural($diff)." 前";
 $diff = round($diff/60);
 if ($diff<60)
  return $diff." 分钟".plural($diff)." 前";
 $diff = round($diff/60);
 if ($diff<24)
  return $diff." 小时".plural($diff)." 前";
 $diff = round($diff/24);
 if ($diff<7)
  return $diff." 天".plural($diff)." 前";
 $diff = round($diff/7);
 if ($diff<4)
  return $diff." 星期".plural($diff)." 前";
 return "on ".date("F j, Y", strtotime($date));
}

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

(0)

相关推荐

  • php显示时间常用方法小结

    本文实例讲述了php显示时间常用方法.分享给大家供大家参考.具体分析如下: 一.PHP函数Date()获取当前时间 代码: 复制代码 代码如下: <?php echo $showtime=date("Y-m-d H:i:s");?> 显示的格式: 年-月-日 小时:分钟:秒 相关参数: a:"am"或者"pm" A:"AM"或者"PM" d:几日,二位数字,若不足二位则前面补零,如: "

  • PHP获取毫秒级时间戳的方法

    本文实例讲述了PHP获取毫秒级时间戳的方法.分享给大家供大家参考.具体分析如下: PHP本身没有提供获取毫秒级时间戳的函数,java里面可以通过gettime();获取.如果是要与java写的某些程序进行高精度的毫秒级的对接通信,则需要使用PHP输出毫秒级的时间.之前我采取的方法是采用不精准的方式,也就是在PHP原生的时间函数后面加上一个三位数字构成.为获取更为精准的毫秒级时间戳可以使用下面的代码: <?php function getMillisecond() { list($t1, $t2)

  • php计算两个文件相对路径的方法

    本文实例讲述了php计算两个文件相对路径的方法.分享给大家供大家参考.具体如下: 一.问题: 写一个php函数算出两个文件的相对路径.例如$a="/a/b/c/d/e.php"; $b="/a/b/12/34/c.php",B相对于A的相对路径是什么? 二.解决方法: <?php /** * 求$b相对于$a的相对路径 * @param string $a * @param string $b * @return string */ function getR

  • PHP时间和日期函数详解

    PHP中所有函数都是UNIX纪元的,即从1970年1月1日开始的. 日期是从这个时候开始的秒数. 当一个函数调用从这时候计的秒数时,就把它当作(timestamp)时间戳. 本地时间函数 1. string date(string format,inieger timestamp) 该函数返回一个表示时间的字符串,是由string format 控制的. 如: <? print(date("Y年 m月d日");//输出当前,年月日. print(date("Y年 m月d

  • 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)) $t

  • php zend 相对路径问题

    <?php define ('P_S', PATH_SEPARATOR); define ('ROOT', "../"); set_include_path(ROOT .P_S .'Zend' .P_S .ROOT.get_include_path()); require_once ROOT.'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Db'); Zend_Loader::loadClass('Zend_Config_Ini')

  • php实现用已经过去多长时间的方式显示时间

    本文实例讲述了php用已经过去多长时间的方式显示时间的方法.分享给大家供大家参考.具体如下: 这里以一种可读性比较好的方式显示已经过去多长时间,比如:距离现在10秒,距离现在1天等等. function time_is_older_than($t, $check_time){ $t = strtolower($t); $time_type = substr(preg_replace('/[^a-z]/', '', $t), 0, 1); $val = intval(preg_replace('/

  • php实现兼容2038年后Unix时间戳转换函数

    使用方法跟旧的函数一模一样. 复制代码 代码如下: function fun_strtotime($var1=0,$var2=0){     if(!$var2){         $var2 = $var1;         $var1 = 0;     }     if(is_numeric($var2)){        $var2 = '@'.$var2;     }     try{         $date  =  new DateTime($var2);         $dat

  • ASP中Session技巧 默认过期时间为20分钟

    写过稍微大型一点 ASP 的人都知道,Session 这个对象真是好用,它可以用来记录使用者私有的资料变量,既安全又方便.但是你真的知道 Session 的运作原理吗?或许了解以后,你就再也不太敢使用这个令人又爱又恨的对象.虽然转而替代之的方法稍嫌麻烦,但在长期考量之下,也就不得不这么做了 首先来讲讲 Session 的好处,它可以用来记录客户端私有的资料变量,并且在时间范围内不会消失.这真的是很重要的功能,尤其是有会员的系统必须要用到的.像是会员的登入帐号.时间.状态以及许许多多该记录的实时数

  • php返回相对时间(如:20分钟前,3天前)的方法

    本文实例讲述了php返回相对时间(如:20分钟前,3天前)的方法.分享给大家供大家参考.具体如下: function plural($num) { if ($num != 1) return "s"; } function getRelativeTime($date) { $diff = time() - strtotime($date); if ($diff<60) return $diff." 秒".plural($diff)." 前"

  • 20分钟成功编写bootstrap响应式页面 就这么简单

    最近发现一个叫 Bootstrap 的好东西,Bootstrap 是现在最流行的响应式 CSS 框架,它以移动设备优先,能够快速适应不同设备.使用它编写响应式页面快捷.方便,而且屏蔽了浏览器差异.使用了 Bootstrap 后,再也无法想象过去使用原始的 CSS 编写网页的悲惨生活了. 经过学习,我发现自己也具备了分分钟开发出一个高大上的页面的能力.本文将会为大家介绍 Bootstrap,并且带领大家一起实现一个响应式页面. 图 1. 移动优先,适应不同设备 一.安装 最简单的方式是直接在网页中

  • 20分钟轻松创建自己的Bootstrap站点

    本文的主要目的让你在20分钟内学会使用twitter bootstrap创建一个站点,如何建立站点,下文为大家介绍: 首先需要说的是twitter bootstrap是非常优秀的一个前端开源框架,它为所有的组键都提供了详细的用例,让你能够轻易地通过复制黏贴而附加到你的设计中. 基本的HTML模板 我们需要以一个基本的HTML模板,这样我们能够把所需要的bootstrap文件包含进来.下面就是我们twitter bootstrap项目的开头,复制这些代码到一个文件中并将其命名为index.html

  • 20分钟打造属于你的Bootstrap站点

    本文的主要目的让你在20分钟内学会使用twitter bootstrap创建一个站点,如何建立站点,下文为大家介绍: 基本的HTML模板  .我们需要以一个基本的HTML模板,这样我们能够把所需要的bootstrap文件包含进来.下面就是我们twitter bootstrap项目的开头,复制这些代码到一个文件中并将其命名为index.html. <!DOCTYPE html> <head> <title>Twitter Bootstrap Tutorial - A re

  • Mysql时间轴数据 获取同一天数据的前三条

    创建表数据 CREATE TABLE `praise_info` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID', `pic_id` varchar(64) DEFAULT NULL COMMENT '图片ID', `created_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (`id`), KEY `pic_id` (`pic_id`) U

  • JavaScript 监控微信浏览器且自带返回按钮时间

    比如现在有一个操作 是 A->B->C->B 在B页面的返回键 第一次返回的是C 如果想直接返回A或者其他地方 则需要触发返回事件 pushHistory(); window.addEventListener("popstate", function(e) { //alert("我监听到了浏览器的返回按钮事件啦");//根据自己的需求实现自己的功能 window.location = 'http://www.baidu.com'; }, false

  • php使用gettimeofday函数返回当前时间并存放在关联数组里

    本文实例讲述了php使用gettimeofday函数返回当前时间并存放在关联数组里的方法.分享给大家供大家参考.具体分析如下: 英文官方描述如下: Key Description sec Seconds since midnight before January 1, 1970 usec  Microseconds since the sec value minuteswest    Local time zone difference from GMT, in minutes dsttime 

  • 解决SpringMVC 返回Java8 时间JSON数据的格式化问题处理

    有时在Spring MVC中返回JSON格式的response的时候会使用@ResponseBody注解,不过在处理java8中时间的时候会很麻烦,一般我们使用的HTTPMessageConverter是MappingJackson2HttpMessageConverter,它默认返回的时间格式是这种: "startDate" : { "year" : 2010, "month" : "JANUARY", "dayO

  • sql中时间以5分钟半个小时任意间隔分组的实现方法

    开发中遇到过问题就是对时间以半个小时分钟分组,如统计08:00-08:30的人数,08:30-09:00的人数,貌似sql中没有这样的函数吧,直接从数据库里查出来,在java里分组也太low了吧 想到方法1 自定义函数,自己实现时间的半个小时转换,统计时调用函数 CREATE FUNCTION `date_half_hour_format`(in_date TIMESTAMP) RETURNS TIMESTAMP BEGIN DECLARE out_date TIMESTAMP; DECLARE

随机推荐