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

yipeiwu_com7年前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和XSS跨站攻击的防范

其实这个话题很早就想说说了,发现国内不少PHP站点都有XSS漏洞。今天偶然看到PHP5的一个XSS漏洞,在此小结一下。顺便提醒,使用PHP5的朋友最好打下补丁,或者升级一下。 如果你不懂...

PHP详解ASCII码对照表与字符转换

PHP详解ASCII码对照表与字符转换

一,通用的ASCII码对照表 图解ASCII码对照表图,以字符A为例Dec表示十进制,如65Hx表示十六进制,如41Oct表示八进制,如101Char表示显示字符,如AASCII码对...

在PHP中检查PHP文件是否有语法错误的方法

之前在当当的时候的一个项目中用到了一个简单的模板引擎,其实也是借鉴discuz来做的模板引擎,很简单,它所作的事情就是把一些自定义的标签编译成php代码。已经说了很简单了,所以编译的时候...

PHP中如何调用webservice的实例参考

下面用一个例子说明:web service服务是查询QQ用户是否在线 使用php5开发客户端:复制代码 代码如下:<?phptry {    //$c...

php邮件发送的两种方式

这篇文章研究的主要内容就是使用PHP来发送电子邮件,总结为以下两种方法: 一、使用PHP内置的mail()函数 <?php $to = "test@163.com";...