PHP获取一年中每个星期的开始和结束日期的方法


Posted in PHP onFebruary 12, 2015

本文实例讲述了PHP获取一年中每个星期的开始和结束日期的方法。分享给大家供大家参考。具体分析如下:

最近项目中需要做个提交周报的功能,需要知道指定周数的开始日期和结束日期,以便处理其他业务。以下是一段通过PHP来获取一年中的每星期的开始日期和结束日期的代码,与大家分享。
以下是一段通过PHP来获取一年中的每星期的开始日期和结束日期的代码。

function get_week($year) { 
$year_start = $year . "-01-01"; 
$year_end = $year . "-12-31"; 
$startday = strtotime($year_start); 
if (intval(date('N', $startday)) != '1') { 
$startday=strtotime("nextmonday",strtotime($year_start));
//获取年第一周的日期 
} 
$year_mondy = date("Y-m-d", $startday);//获取年第一周的日期 
$endday = strtotime($year_end); 
if (intval(date('W', $endday)) == '7') { 
$endday=strtotime("lastsunday",strtotime($year_end)); 
} 
$num = intval(date('W', $endday)); 
for ($i = 1; $i <= $num; $i++) { 
$j = $i -1; 
$start_date = date("Y-m-d", strtotime("$year_mondy $j week ")); 
$end_day = date("Y-m-d", strtotime("$start_date +6 day")); 
$week_array[$i] = array( 
str_replace("-",".",$start_date),str_replace("-",".",$end_day)); 
} 
return $week_array; 
}

函数get_week()通过传入参数$year年份,获取当年第一天和最后一天所在的周数,计算第一周的日期,通过循环获取每一周的第一天和最后一天的日期。最后返回是一个数组。
想得到指定周数的开始日期和结束日期,比如2011年第18周的开始日期和结束日期,代码如下:

$weeks = get_week(2011); 
echo '第18周开始日期:'.$weeks[18][0].''; 
echo '第18周结束日期:'.$weeks[18][1];

最后输出结果:

1. 第18周开始日期:2011.05.02 
2. 第18周结束日期:2011.05.08

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

PHP 相关文章推荐
PHP教程 变量定义
Oct 23 PHP
PHP 引用文件技巧
Mar 02 PHP
php INI配置文件的解析实现分析
Jan 04 PHP
将时间以距今多久的形式表示,PHP,js双版本
Sep 25 PHP
Discuz!X中SESSION机制实例详解
Sep 23 PHP
php实现图片上传并利用ImageMagick生成缩略图
Mar 14 PHP
PHP多维数组元素操作类的方法
Nov 14 PHP
PHP操作MySQL中BLOB字段的方法示例【存储文本与图片】
Sep 15 PHP
PHP getNamespaces()函数讲解
Feb 03 PHP
PHP正则验证字符串是否为数字的两种方法并附常用正则
Feb 27 PHP
php利用array_search与array_column实现二维数组查找
Jul 08 PHP
Laravel框架Auth用户认证操作实例分析
Sep 29 PHP
php模拟post提交数据的方法
Feb 12 #PHP
PHP遍历数组的三种方法及效率对比分析
Feb 12 #PHP
PHP进程同步代码实例
Feb 12 #PHP
PHP CURL 内存泄露问题解决方法
Feb 12 #PHP
PHP中捕获超时事件的方法实例
Feb 12 #PHP
php单例模式示例分享
Feb 12 #PHP
PHP 正则表达式小结
Feb 12 #PHP
You might like
IP138 IP地址查询小偷实现代码
2010/02/15 PHP
phpMyAdmin自动登录和取消自动登录的配置方法
2014/05/12 PHP
一个加载js文件的小脚本
2007/06/28 Javascript
地址栏上的一段语句,改变页面的风格。(教程)
2008/04/02 Javascript
JQuery 遮罩层实现(mask)实现代码
2010/01/09 Javascript
匹配任意字符的正则表达式写法
2010/04/29 Javascript
客户端 使用XML DOM加载json数据的方法
2010/09/28 Javascript
javascript读写XML实现广告轮换(兼容IE、FF)
2013/08/09 Javascript
js 限制input只能输入数字、字母和汉字等等
2013/12/18 Javascript
JS实现DIV容器赋值的方法
2015/12/14 Javascript
基于Node.js的强大爬虫 能直接发布抓取的文章哦
2016/01/10 Javascript
[原创]JQuery 在表单提交之前修改 提交的值
2016/04/14 Javascript
jquery ajax后台返回list,前台用jquery遍历list的实现
2016/10/30 Javascript
Ionic2系列之使用DeepLinker实现指定页面URL
2016/11/21 Javascript
使用vue实现点击按钮滑出面板的实现代码
2017/01/10 Javascript
vue cli3 配置proxy代理无效的解决
2019/10/30 Javascript
vuex实现购物车的增加减少移除
2020/06/28 Javascript
Vue指令实现OutClick的示例
2020/11/16 Javascript
[30:55]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第二场 11.18
2020/11/18 DOTA
Python实现Const详解
2015/01/27 Python
python 搭建简单的http server,可直接post文件的实例
2019/01/03 Python
Pycharm中Python环境配置常见问题解析
2020/01/16 Python
Django模板标签中url使用详解(url跳转到指定页面)
2020/03/19 Python
推荐技术人员一款Python开源库(造数据神器)
2020/07/08 Python
python3通过subprocess模块调用脚本并和脚本交互的操作
2020/12/05 Python
彪马加拿大官网:PUMA加拿大
2018/10/04 全球购物
Java提供了哪些企业应用编程接口
2015/02/13 面试题
vue+django实现下载文件的示例
2021/03/24 Vue.js
国际经济贸易专业推荐信
2013/11/06 职场文书
中专生的个人自我评价
2013/12/11 职场文书
村委会贫困证明
2014/01/14 职场文书
外贸业务员求职信
2014/06/16 职场文书
找工作求职信
2014/07/07 职场文书
2019最新版股权转让及委托持股协议书范本
2019/08/07 职场文书
创业计划书之婴幼儿游泳馆
2019/09/11 职场文书
利用Python实现翻译HTML中的文本字符串
2022/06/21 Python