PHP获取时间的一些常用方法
2015-08-03 13:25
721 查看
<?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;
网上看到的一些比较好用的,获取时间的方法,供学习。
来自:http://blog.csdn.net/ihelloworld/article/details/7699730
/**
* 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;
网上看到的一些比较好用的,获取时间的方法,供学习。
来自:http://blog.csdn.net/ihelloworld/article/details/7699730
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- PHP数据库长连接mysql_pconnect的细节
- 如何在 Linux 上安装、配置 NTP 服务器和客户端?
- Php Installing An Expansion
- Chrony:一个类 Unix 系统上 NTP 客户端和服务器替代品
- DB2 日期和时间的函数应用说明
- flex actionScript时间处理相加返回相加后的date
- Delphi实现读取系统时间与日期完整实例
- PHP+Apache在Windows 9x下的安装和配置
- IIS 6 的 PHP 最佳配置方法
- 安装Apache和PHP的一些补充
- Linux Apache+MySQL+PHP
- 建立Apache+PHP+MySQL数据库驱动的动态网站
- Lua常用时间函数使用实例