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

    php 获取时间详解

    墨辰丷墨辰丷2018-05-09 14:53:01原创846
    本文主要和大家分享php获取时间, date()格式化一个本地时间/日期,返回将整数timestamp按照给定的格式字串而产生的字符串。如果没有给出时间戳则使用本地当前时间。换句话说,timestamp是可选的,默认值为 time()

    <?php  
    /** 
     * php 获取时间(今天,昨天,三天内,本周,上周,本月,三年内,半年内,一年内,三年内) 
     * 
     * author:ihelloworld2010@gmail.com 
     * date:2012-06-28 16:00:01 
     */  
      
    $q = $_GET['q'] ? intval($_GET['q']) : 0;  
      
    $text = '';  
    $now = time();  
      
    if ($q === 1) {// 今天  
        $text = '今天';  
        $beginTime = date('Y-m-d 00:00:00', $now);  
        $endTime = date('Y-m-d 23:59:59', $now);  
    } elseif ($q === 2) {// 昨天  
        $text = '昨天';  
        $time = strtotime('-1 day', $now);  
        $beginTime = date('Y-m-d 00:00:00', $time);  
        $endTime = date('Y-m-d 23:59:59', $now);  
    } elseif ($q === 3) {// 三天内  
        $text = '三天内';  
        $time = strtotime('-2 day', $now);  
        $beginTime = date('Y-m-d 00:00:00', $time);  
        $endTime = date('Y-m-d 23:59:59', $now);  
    } elseif ($q === 4) {// 本周  
        $text = '本周';  
        $time = '1' == date('w') ? strtotime('Monday', $now) : strtotime('last Monday', $now);  
        $beginTime = date('Y-m-d 00:00:00', $time);  
        $endTime = date('Y-m-d 23:59:59', strtotime('Sunday', $now));  
    } elseif ($q === 5) {// 上周  
        $text = '上周';  
        // 本周一  
        $thisMonday = '1' == date('w') ? strtotime('Monday', $now) : strtotime('last Monday', $now);  
        // 上周一  
        $lastMonday = strtotime('-7 days', $thisMonday);  
        $beginTime = date('Y-m-d 00:00:00', $lastMonday);  
        $endTime = date('Y-m-d 23:59:59', strtotime('last sunday', $now));  
    } elseif ($q === 6) {// 本月  
        $text = '本月';  
        $beginTime = date('Y-m-d 00:00:00', mktime(0, 0, 0, date('m', $now), '1', date('Y', $now)));  
        $endTime = date('Y-m-d 23:39:59', mktime(0, 0, 0, date('m', $now), date('t', $now), date('Y', $now)));  
    } elseif ($q === 7) {// 三月内  
        $text = '三月内';  
        $time = strtotime('-2 month', $now);  
        $beginTime = date('Y-m-d 00:00:00', mktime(0, 0,0, date('m', $time), 1, date('Y', $time)));  
        $endTime = date('Y-m-d 23:39:59', mktime(0, 0, 0, date('m', $now), date('t', $now), date('Y', $now)));  
    } elseif ($q === 8) {// 半年内  
        $text = '半年内';  
        $time = strtotime('-5 month', $now);  
        $beginTime = date('Y-m-d 00:00:00', mktime(0, 0,0, date('m', $time), 1, date('Y', $time)));  
        $endTime = date('Y-m-d 23:39:59', mktime(0, 0, 0, date('m', $now), date('t', $now), date('Y', $now)));  
    }  elseif ($q === 9) {// 一年内  
        $text = '一年内';  
        $beginTime = date('Y-m-d 00:00:00', mktime(0, 0,0, 1, 1, date('Y', $now)));  
        $endTime = date('Y-m-d 23:39:59', mktime(0, 0, 0, 12, 31, date('Y', $now)));  
    } elseif ($q === 10) {// 三年内  
        $text = '三年内';  
        $time = strtotime('-2 year', $now);  
        $beginTime = date('Y-m-d 00:00:00', mktime(0, 0, 0, 1, 1, date('Y', $time)));  
        $endTime = date('Y-m-d 23:39:59', mktime(0, 0, 0, 12, 31, date('Y')));  
    }  
      
    echo $text;  
    echo '<br />';  
    echo $beginTime;  
    echo '<br />';  
    echo $endTime;

    总结:

    希望通过本篇文章能让小伙伴们对php获取时间有一个更深的理解和掌握。

    相关推荐:

    php获取时间代码小结分享

    PHP获取时间差

    php获取时间的几种方法

    php获取时间(系统时间和网络时间)

    以上就是php 获取时间详解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php 详解 时间
    上一篇: php中self与this的使用 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • PHP网站常见一些安全漏洞及防御方法• PHP Hyperf 3.0 发布!新功能速览• 详解PHP怎么实现旋转图片验证• 简单理解PHP超级全局变量• 一起聊聊PHP的路由与伪静态应用
    1/1

    PHP中文网