`
cindylu520
  • 浏览: 148021 次
  • 性别: Icon_minigender_2
  • 来自: 大连
社区版块
存档分类
最新评论

php处理日期格式为秒前、分前、小时前、昨天、前天

PHP 
阅读更多
    /**
     * 将日期格式根据以下规律修改为不同显示样式
     * 小于1分钟 则显示多少秒前
     * 小于1小时,显示多少分钟前
     * 一天内,显示多少小时前
     * 3天内,显示前天22:23或昨天:12:23。
     * 超过3天,则显示完整日期。
     * @static
     * @param  $sorce_date 数据源日期 unix时间戳
     * @return void
     */
    public static function getDateStyle($sorce_date){

        self::$nowTime = time();  //获取今天时间戳

//        echo '数据源时间戳:'.$sorce_date . ' = '. date('Y-m-d H:i:s',$sorce_date);
//        echo "\n 当前时间戳:". date('Y-m-d H:i:s',self::$nowTime)."\n";

        $timeHtml = ''; //返回文字格式
        $temp_time = 0;
        switch($sorce_date){

            //一分钟
            case ($sorce_date+60)>=self::$nowTime:
                $temp_time = self::$nowTime-$sorce_date;
                $timeHtml = $temp_time ."秒前";
                break;

            //小时
            case ($sorce_date+3600)>=self::$nowTime:
                $temp_time = date('i',self::$nowTime-$sorce_date);
                $timeHtml = $temp_time ."分钟前";
                break;

            //天
            case ($sorce_date+3600*24)>=self::$nowTime:
                $temp_time = date('H',self::$nowTime)-date('H',$sorce_date);
                $timeHtml = $temp_time .'小时前';
                break;

            //昨天
            case ($sorce_date+3600*24*2)>=self::$nowTime:
                $temp_time = date('H:i',$sorce_date);
                $timeHtml = '昨天'.$temp_time ;
                break;

            //前天
            case ($sorce_date+3600*24*3)>=self::$nowTime:
                $temp_time  = date('H:i',$sorce_date);
                $timeHtml = '前天'.$temp_time ;
                break;

            //3天前
            case ($sorce_date+3600*24*4)>=self::$nowTime:
                $timeHtml = '3天前';
                break;

            default:
                $timeHtml = date('Y-m-d',$sorce_date);
                break;

        }
        return $timeHtml;

    }
分享到:
评论

相关推荐

    在PHP里得到前天和昨天的日期的代码

    在PHP中获取前天和昨天的日期是常见的需求,特别是在处理日期相关的数据分析或者日志记录时。以下是一些实现这个功能的方法: 1. 使用 `strtotime` 函数: ```php echo date("Y/m/d H:i:s", strtotime("1 days ...

    php使用date和strtotime函数输出指定日期的方法

    使用date函数输出昨天的日期,可以通过time()函数减去3600秒(即1小时)来获取昨天的时间戳,再用date()函数格式化输出。 ```php date_default_timezone_set('Asia/Shanghai'); echo date("Ymd", time() - 3600); //...

    PHP实现时间日期友好显示实现代码

    例如,将2022年1月1日0时0分0秒转换为"昨天晚上12点",将"刚刚"、"2小时前"等更接近日常语言的方式表达时间。 接下来,我们来分析一下该段PHP代码的关键点和知识点: 1. 时间戳概念 在PHP中,时间戳是自Unix纪元...

    PHP CodeBase:将时间显示为"刚刚""n分钟/小时前"的方法详解

    9. 对于超过24小时但小于三天的时间差,会特别考虑如果是“昨天”,则显示为“昨天X点XX分”,“前天”则显示为“前天X点XX分”。 10. 如果时间差超过三天,则直接显示完整的时间。 注意事项: - 使用`transfer_...

    php自定义的格式化时间示例代码

    3. 如果`$format`参数为`u`,则函数会根据提供的`$timestamp`计算出时间差异,并根据差异的秒数将时间格式化为“小时前”、“分钟前”、“秒前”或者“刚刚”等相对时间描述。 4. 如果时间戳与今天的时间戳差异在0...

    php格式化时间戳

    如果超过了一天,则根据是否跨年输出“x天前”、“昨天”、“前天”等。 第三个函数仍然是formatTime($time),它提供了另一种计算时间差的方法,并根据这个差值来格式化时间。它首先比较当前日期和传入时间戳的年、...

    php中时间轴开发(刚刚、5分钟前、昨天10:23等)

    在PHP中可以使用`strtotime()`函数将任何英文文本的日期时间描述解析为Unix时间戳,而`date()`函数则可以将Unix时间戳格式化为可读的日期时间格式。 接下来,我们具体分析给定代码中实现时间轴功能的函数`tranTime...

    DEDE 24小时内发布的信息日期为红色

    - 显示具体时间(如“昨天”、“前天”等)而非具体日期。 - 根据不同的栏目设置不同的字体颜色或样式。 总之,通过深入研究和实践这类功能,不仅可以提升网站的用户体验,还能增强开发者对织梦CMS的理解和运用能力...

    php格式化时间戳显示友好的时间实现思路及代码

    比如,我们不希望总是显示精确到秒的时间,而是更倾向于展示“几分钟前”、“几小时前”这样的相对时间。本文将详细介绍如何使用PHP实现这一功能,并提供相应的代码示例。 首先,我们要明确实现这种友好的时间格式...

    使用php 获取时间今天明天昨天时间戳的详解

    对于更早的日期,例如前天,只需将秒数改为`48 * 60 * 60`即可: ```php <?php echo date("Y/m/d H:i:s", time() - 2 * 24 * 60 * 60); // 减去两天的秒数 ?> ``` 还有另一种方法,利用`strtotime()`函数来实现: ...

    PHP实现时间轴函数代码

    - 如果时间差小于3天,判断是否是昨天或者前天,并格式化输出日期和时间。 - 如果时间差大于3天,直接返回完整的时间戳格式。 函数的实现代码如上文所提。调用tranTime()函数时,如果输入的$time不是Unix时间戳,...

    php资料库4 防止foeach中变量不是数组

    在PHP里得到前天和昨天的日期的代码.txt PHP实例:FCKeditor 的配置和使用方法.txt Server Application Unavailable.txt 解决Imail能发却经常收不到邮件的问题(IMAIL队列卡死,Queuemgr服务挂起.txt javascript获取...

    将时间以距今多久的形式表示,PHP,js双版本

    PHP FOR Smarty 复制代码 代码如下: * Name: time_ago * Purpose: 将时间戳专为距当前时间的表现形式 * 1分钟内按秒 * 1小时内按分钟显示 * 1天内按时分显示 * 3天内以昨天,前天显示 * 超过3天显示具体日期 * * @...

    tp5(thinkPHP5框架)时间查询操作实例分析

    在ThinkPHP5框架中,时间查询是数据库操作中的一个重要部分,特别是在处理涉及日期和时间的数据时。本文将深入探讨如何在TP5框架中进行时间查询,包括基本的时间比较、`whereTime`方法的使用以及时间表达式的应用。 ...

    苹果8XPC和手机二合一完整版

    ****************************模板规范化管理 开始**************************** ... [gbook:numfill] 自动补位序号,个位数前补0 [gbook:numjoin] 如使用start参数,则自动从start开始计数 [gbook:id] ...

Global site tag (gtag.js) - Google Analytics