php计算给定日期所在周的开始日期和结束日期示例

yipeiwu_com6年前PHP代码库

本文实例讲述了php计算给定日期所在周的开始日期和结束日期。分享给大家供大家参考,具体如下:

<?php
/**
 * 取得给定日期所在周的开始日期和结束日期
 * @param string $gdate 日期,默认为当天,格式:YYYY-MM-DD
 * @param int $weekStart 一周以星期一还是星期天开始,0为星期天,1为星期一
 * @return array 数组array( "开始日期 ",  "结束日期");
 */
function getAWeekTimeSlot($gdate = '', $weekStart = 0) {
 if (! $gdate){
 $gdate = date ( "Y-m-d" );
 }
 $w = date ( "w", strtotime ( $gdate ) ); //取得一周的第几天,星期天开始0-6
 $dn = $w ? $w - $weekStart : 6; //要减去的天数
 $st = date ( "Y-m-d", strtotime ( "$gdate  - " . $dn . "  days " ) );
 $en = date ( "Y-m-d", strtotime ( "$st  +6  days " ) );
 return array ($st, $en ); //返回开始和结束日期
}
$timeSlot=getAWeekTimeSlot('2017-01-24',1);
echo "Week Start:{$timeSlot[0]}--->Week End: {$timeSlot[1]} ";
?>

运行结果如下:

Week Start:2017-01-23--->Week End: 2017-01-29

PS:这里再为大家推荐几款时间及日期相关工具供大家参考使用:

在线日期/天数计算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi

在线日期计算器/相差天数计算器:
http://tools.jb51.net/jisuanqi/datecalc

在线日期天数差计算器:
http://tools.jb51.net/jisuanqi/onlinedatejsq

Unix时间戳(timestamp)转换工具:
http://tools.jb51.net/code/unixtime

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php日期与时间用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php打造属于自己的MVC框架

一、文件结构 建立3个文件夹 controller文件夹存放控制器文件 view文件夹存放视图文件 model文件夹存放数据文件 建立1个index.php 作为唯一入口 二、控制器 我...

php实现的SESSION类

本文实例讲述了php实现的SESSION类。分享给大家供大家参考。具体分析如下: 关于 SESSION 在 php 中的应用是必不要少的,是最重要的功能之一。SESSION 在网络应用中...

PHP UTF8编码内的繁简转换类

曾找过一个JS版的,但是到了UTF8编码里不能用,于是就产生了自已写一个的念头。其实我这个代码的实现原理很简单的,只是一个替换字符集的过程,相信大部份人都可以写得出来。以下是代码,不知道...

PHP冒泡排序算法代码详细解读

复制代码 代码如下: <?php $arr = array(345,4,17,6,52,16,58,69,32,8,234); $n = count($arr); for($i=1...

PHP 出现乱码和Sessions验证问题的解决方法!

在PHP脚本中读出中文或者其他语言文字为乱码的时候,首先检查你的文件格式是不是用UTF8的编码格式保存的。如果不是请用UltraEdit...等一些对UTF8支持转换的工具转换一下,最好...