php 获取时间详解

墨辰丷
墨辰丷 原创
2023-03-25 18:10:01 1122浏览

本文主要和大家分享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核实处理。