• PHP版实现友好的时间显示方式(例如:2小时前)


    完整php类,通常我会配合smary使用,快捷使用 (plugins/function.rdate.php),更多php技术开发就去php教程网,http://php.662p.com

    <?PHP
    /* 
    * Data time functions.
      // * 模块
    */
    defined('TSKY') || die('Permission Denied!');
    
    function fmtMonth($month){
        return date('F, Y',day2time($month.'01'));
    }
    
    // 
    function fmt_month($ts) {
        return strftime("%b,%Y",$ts);
    }
    
    // 03:02
    function shartTime($ts) {
        return strftime("%H:%M",$ts);
    }
    // 03:02:01
    function longTime($ts) {
        return strftime("%T",$ts);
    }
    //4月18日
    function shortDate($ts) {
        return date("n月d日",$ts);
    }
    //2006年4月18日
    function longDate($ts) {
        return date("Y年n月d日",$ts);
    }
    
    function dateTime($ts) {
        return date("Y年n月d日 H:i:s",$ts);
    }
    function fullDateTime($ts) {
        return date("Y年n月d日 ",$ts).week($ts);
    }
    function week($ts) {
        global $lang;
        return  $lang['weekDay'][date('w',$ts)];
    }
    
    function relatively_date($date) {
        if (!preg_match('/^d+$/', $date)) $date = strtotime(trim($date));
        $sec = time() - $date;
        switch(true){
            case $sec < 3600:
                return round($sec/60). ' 分钟前';
            case $sec < 86400:
                return round($sec/3600). ' 小时前';
            case $sec < (86400 * 7):
                return round($sec/86400). ' 天前';//days ago
            case $sec < (86400 * 7 * 4):
                return round($sec/(86400*7)). ' 周前'; //weeks ago
            default:
                return longDate($date);
        }
    }
    
    function nextMonth($month/*200512->200601*/){
        return date('Ym',strtotime('+1 month',strtotime($month.'01')));
    }
    function prevMonth($month/*200512->200511*/){
        return date('Ym',strtotime('-1 month',strtotime($month.'01')));
    }
    function prevDay($day/*20050826*/){
        $day = substr($day,0,8);
        return date('Ymd',strtotime('-1 day',strtotime($day)));
    }
    
    function nextDay($day/*20050826*/){
        $day = substr($day,0,8);
        return date('Ymd',strtotime('+1 day',strtotime($day)));
    }
    function nextExistsDay($day/*20050109*/){
        $day = nextDay($day);
        while(!hasTopic($day) && $day < TODAY){
            $day = nextDay($day);
        }
        return hasTopic($day) ? $day : false;
    }
    function prevExistsDay($day/*20050109*/){
        global $cfg;
        $day = prevDay($day);
        while(!hasTopic($day) && (int)$day > $cfg->origDate){
            $day = prevDay($day);
        }
        return hasTopic($day) ? $day : false;
    }
    
    
    function prev_day($day){$day = substr($day,0,8);return date('Ymd',strtotime('-1 day',strtotime($day)));}
    function long_date($ts){return date("Y年n月d日",$ts);}
    function day2time($day){return @strtotime($day);}
    
    
    
    
    
    /*
    echo "<pre>";
    echo strftime("a%a
    "); //  a  星期二             
    echo strftime("A%A
    "); //  A  星期二             
    echo strftime("b%b
    "); //  b  四月               
    echo strftime("B%B
    "); //  B  四月               
    echo strftime("c%c
    "); //  c  2006-4-18 3:48:11  
    echo strftime("C%C
    "); //  C                     
    echo strftime("d%d
    "); //  d  18                 
    echo strftime("D%D
    "); //  D                     
    echo strftime("e%e
    "); //  e                     
    echo strftime("g%g
    "); //  g                     
    echo strftime("G%G
    "); //  G                     
    echo strftime("h%h
    "); //  h                     
    echo strftime("H%H
    "); //  H  03                 
    echo strftime("I%I
    "); //  I  03                 
    echo strftime("j%j
    "); //  j  108                
    echo strftime("m%m
    "); //  m  04                 
    echo strftime("M%M
    "); //  M  48                 
    echo strftime("n%n
    "); //  n                     
    echo strftime("p%p
    "); //  p  上午               
    echo strftime("r%r
    "); //  r                     
    echo strftime("R%R
    "); //  R                     
    echo strftime("S%S
    "); //  S  11                 
    echo strftime("t%t
    "); //  t                     
    echo strftime("T%T
    "); //  T                     
    echo strftime("u%u
    "); //  u                     
    echo strftime("U%U
    "); //  U  16                 
    echo strftime("V%V
    "); //  V                     
    echo strftime("W%W
    "); //  W  16                 
    echo strftime("w%w
    "); //  w  2                  
    echo strftime("x%x
    "); //  x  2006-4-18          
    echo strftime("X%X
    "); //  X  3:48:11            
    echo strftime("y%y
    "); //  y  06                 
    echo strftime("Y%Y
    "); //  Y  2006               
    echo strftime("Z%Z
    "); //  Z  中国标准时间       
    echo strftime("%%%
    "); //  %                     
    */
    

      详细说明:http://php.662p.com/thread-571-1-1.html

  • 相关阅读:
    Datawhale-新闻文本分类-task4-基于深度学习的文本分类1-fastText
    Datawhale-新闻文本分类-task3-机器学习分类
    (String)、toString、String.valueOf的区别
    抽象类与接口
    内部类详解
    关键字this---static---final
    Intent系列讲解---Intent简介以及相关属性
    Activity系列讲解---Activity的四大启动模式
    Activity系列讲解---Activity运行时的屏幕方向,全屏,窗体模式的设置
    Activity系列讲解---返回结果的处理
  • 原文地址:https://www.cnblogs.com/huasili/p/4102933.html
Copyright © 2020-2023  润新知