• 技术文章 >后端开发 >php教程

    PHP实现时间轴函数代码_PHP

    2016-06-01 12:14:40原创274
    本文将介绍如何实现基于时间轴的时间的转换。
    首先我们要明白时间的几个函数:
    time():返回当前的 Unix 时间戳
    date():格式化一个本地时间/日期。
    应用举例:
    复制代码 代码如下:
    date("Y-m-d H:i:s",time()); //格式化当前时间,输出:2011-9-24 07:27:35

    strtotime():将任何英文文本的日期时间描述解析为 Unix 时间戳。
    应用举例:
    复制代码 代码如下:
    echo strtotime("+1 day"), "\n"; //输出1天前的时间戳:1316932222

    date_default_timezone_set():设定要用的默认时区。
    一般我们设置北京时间:date_default_timezone_set("PRC");
    理解上面几个函数后我们来写时间轴函数:
    该函数的原理就是将系统当前时间与目标时间比较,得到一个差值,再将差值与时间范围(转换成秒)比较,根据其处在时间轴的范围输出不同的结果(如:5分钟前)。为了便于计算,我们将时间都转换成Unix时间戳。
    复制代码 代码如下:
    function tranTime($time) {
    $rtime = date("m-d H:i",$time);
    $htime = date("H:i",$time);
    $time = time() - $time;
    if ($time < 60) {
    $str = '刚刚';
    }
    elseif ($time < 60 * 60) {
    $min = floor($time/60);
    $str = $min.'分钟前';
    }
    elseif ($time < 60 * 60 * 24) {
    $h = floor($time/(60*60));
    $str = $h.'小时前 '.$htime;
    }
    elseif ($time < 60 * 60 * 24 * 3) {
    $d = floor($time/(60*60*24));
    if($d==1)
    $str = '昨天 '.$rtime;
    else
    $str = '前天 '.$rtime;
    }
    else {
    $str = $rtime;
    }
    return $str;
    }

    函数tranTime()中的参数$time必须为Unix时间戳,如果不是请先用strtotime()将其转换成Unix时间戳。上面的代码一看就明白了,不用再多述。
    调用函数,直接输出:
    复制代码 代码如下:
    $times="1316932222";
    echo tranTime($times);
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:时间轴函数
    上一篇:供参考的 php 学习提高路线分享_PHP 下一篇:php数组函数序列之array_unique()
    PHP编程就业班

    相关文章推荐

    • 在Windows下安装Apache + PHP3_PHP教程• PHP教程.经验技巧(上)_PHP教程• 具有新特性的PHP5之异常处理机制_PHP教程• PHP控制网页过期时间的代码_PHP教程• Windows下PHP5和Apache的安装与配置_PHP教程

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网