php中一个有意思的日期逻辑处理
2015-01-24信息快讯网
今天处理了一个很小的问题。需求是这样的,从周一到周日只能看到上周一到上周日的数据。这里直接从数据库里根据 date 字段查询 范围即可
今天处理了一个很小的问题。需求是这样的,从周一到周日只能看到上周一到上周日的数据。
这里直接从数据库里根据 date 字段查询 范围即可。
但需要PHP生成 开始日期和结束日期。
最开始,我直接这么处理。
$start_date = date('Y-m-d' , strtotime("-2 week monday")); $end_date = date('Y-m-d' , strtotime("$start_date +6 day"));
假如日期是 2011-07-19,$start_date= 2011-07-11 这样处理没有问题。
如果日期是 2011-07-18 ,$start_date 则会等于 2011-07-04,还活在上周。
于是换了种方法
$getWeekDay = date("w"); $startDay = date("Y-m-d", mktime(0, 0, 0, date("m"), date("d") - $getWeekDay + 1 - 7, date("Y"))); $endDay = date("Y-m-d", strtotime("+6 day $startDay"));
假如日期是 2011-07-19,$start_date= 2011-07-11 这样处理没有问题,和我们期望的一样。
如果日期是 2011-07-24,我们期望的 $start_date 是 2011-07-11,但实际返回的是 2011-07-18。
不得已,我再改了下方法
$getWeekDay = date("N") ; $startDay = date("Y-m-d", mktime(0, 0, 0, date("m"), date("d") - $getWeekDay + 1 - 7, date("Y"))); $endDay = date("Y-m-d", strtotime("+6 day $startDay"));
这下就OK 了。
深入解析PHP垃圾回收机制对内存泄露的处理
解析PHP处理换行符的问题 \r\n
探讨:如何使用PHP实现计算两个日期间隔的年、月、周、日数
深入php处理整数函数的详解
处理单名多值表单的详解
解析php时间戳与日期的转换
深入php函数file_get_contents超时处理的方法详解
PHP笔记之:日期函数的使用介绍
PHP时间戳与日期之间转换的实例介绍
mysql 查询指定日期时间内sql语句实现原理与代码
simplehtmldom Doc api帮助文档
php中http_build_query 的一个问题
PHP图片处理类 phpThumb参数用法介绍
smarty巧妙处理iframe中内容页的代码
php&mysql 日期操作小记
php处理斐波那契数列非递归方法
Php图像处理类代码分享
php 带逗号千位符数字的处理方法
php中日期加减法运算实现代码
jQuery EasyUI API 中文文档 - DateBox日期框
PHP 时间日期操作实战
PHP中date()日期函数有关参数整理