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和ACCESS写聊天室(一)
Oct 09 PHP
深入解析php之apc
May 15 PHP
个人写的PHP验证码生成类分享
Aug 21 PHP
php中mt_rand()随机数函数用法
Nov 24 PHP
PHP中的switch语句的用法实例详解
Oct 21 PHP
程序员的表白神器“520”大声喊出来
May 20 PHP
基于thinkPHP类的插入数据库操作功能示例
Jan 06 PHP
Laravel中的Auth模块详解
Aug 17 PHP
Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
Nov 14 PHP
php获取手机端的号码以及ip地址实例代码
Sep 12 PHP
Smarty模板语法详解
Jul 20 PHP
Laravel如何同时连接多个数据库详解
Aug 13 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
PHILIPS D1835/D1875的电路分析与打理
2021/03/02 无线电
zend Framework中的Layout(模块化得布局)详解
2013/06/28 PHP
thinkPHP框架实现的简单计算器示例
2018/12/07 PHP
PHP count()函数讲解
2019/02/03 PHP
IE autocomplete internet explorer's autocomplete
2007/06/30 Javascript
JavaScript入门教程(7) History历史对象
2009/01/31 Javascript
JS中confirm,alert,prompt函数区别分析
2011/01/17 Javascript
深入理解JavaScript系列(10) JavaScript核心(晋级高手必读篇)
2012/01/15 Javascript
ext combobox动态加载数据库数据(附前后台)
2014/06/17 Javascript
JavaScript中判断页面关闭、页面刷新的实现代码
2014/08/27 Javascript
Jquery为DIV添加click事件的简单实例
2016/06/02 Javascript
在js中实现邮箱格式的验证方法(推荐)
2016/10/24 Javascript
Ajax 加载数据 练习代码
2017/01/05 Javascript
vue实现登陆登出的实现示例
2017/09/15 Javascript
加快Vue项目的开发速度的方法
2018/12/12 Javascript
详解Django框架中的视图级缓存
2015/07/23 Python
Python selenium文件上传方法汇总
2020/11/19 Python
Python爬虫利用cookie实现模拟登陆实例详解
2017/01/12 Python
浅析python递归函数和河内塔问题
2017/04/18 Python
python之MSE、MAE、RMSE的使用
2020/02/24 Python
Python-opencv实现红绿两色识别操作
2020/06/04 Python
基于Python中Remove函数的用法讨论
2020/12/11 Python
Python基于mediainfo批量重命名图片文件
2020/12/29 Python
如何编写python的daemon程序
2021/01/07 Python
HTML5 DeviceOrientation实现手机网站摇一摇功能代码实例
2015/04/24 HTML / CSS
美国购买舞会礼服网站:Couture Candy
2019/12/29 全球购物
爱之链教学反思
2014/04/30 职场文书
企业诚信承诺书
2014/05/23 职场文书
学校食堂标语
2014/10/06 职场文书
个人贷款收入证明
2014/10/26 职场文书
导师对论文的学术评语
2015/01/04 职场文书
民政工作个人总结
2015/02/28 职场文书
2015年圣诞节活动总结
2015/03/24 职场文书
2015年加油站站长工作总结
2015/05/27 职场文书
python元组打包和解包过程详解
2021/08/02 Python
Python中Matplotlib的点、线形状、颜色以及绘制散点图
2022/04/07 Python