PHP获取日期对应星期、一周日期、星期开始与结束日期的方法


Posted in PHP onJune 22, 2018

本文实例讲述了PHP获取日期对应星期、一周日期、星期开始与结束日期的方法。分享给大家供大家参考,具体如下:

/*
 * 获取日期对应的星期
 * 参数$date为输入的日期数据,格式如:2018-6-22
 */
function get_week($date)
{
  //强制转换日期格式
  $date_str = date('Y-m-d', strtotime($date));
  //封装成数组
  $arr = explode("-", $date_str);
  //参数赋值
  //年
  $year = $arr[0];
  //月,输出2位整型,不够2位右对齐
  $month = sprintf('%02d', $arr[1]);
  //日,输出2位整型,不够2位右对齐
  $day = sprintf('%02d', $arr[2]);
  //时分秒默认赋值为0;
  $hour = $minute = $second = 0;
  //转换成时间戳
  $strap = mktime($hour, $minute, $second, $month, $day, $year);
  //获取数字型星期几
  $number_wk = date("w", $strap);
  //自定义星期数组
  $weekArr = array("0", "1", "2", "3", "4", "5", "6");
  //获取数字对应的星期
  return $weekArr[$number_wk];
}
/**
 * 获取一周日期
 * @param $time 时间戳
 * @param $format 转换格式
 */
function get_week($time, $format = "Y-m-d") {
  $week = date('w',$time);
  $weekname=array('星期一','星期二','星期三','星期四','星期五','星期六','星期日');
  //星期日排到末位
  if(empty($week)){
    $week=7;
  }
  for ($i=0;$i<=6;$i++){
  $data[$i]['date'] = date($format,strtotime( '+'. $i+1-$week .' days',$time));
  $data[$i]['week'] = $weekname[$i];
  }
  return $data;
}
/*
 * 获取某星期的开始时间和结束时间
 * time 时间
 * first 表示每周星期一为开始日期 0表示每周日为开始日期
 */
function getWeekMyActionAndEnd($time = '', $first = 1)
{
  //当前日期
  if (!$time) $time = time();
  $sdefaultDate = date("Y-m-d", $time);
  //$first =1 表示每周星期一为开始日期 0表示每周日为开始日期
  //获取当前周的第几天 周日是 0 周一到周六是 1 - 6
  $w = date('w', strtotime($sdefaultDate));
  //获取本周开始日期,如果$w是0,则表示周日,减去 6 天
  $week_start = date('Y-m-d', strtotime("$sdefaultDate -" . ($w ? $w - $first : 6) . ' days'));
  //本周结束日期
  $week_end = date('Y-m-d', strtotime("$week_start +6 days"));
  return array("week_start" => $week_start, "week_end" => $week_end);
}
PHP 相关文章推荐
PHP4和PHP5性能测试和对比 测试代码与环境
Aug 17 PHP
用PHP调用Oracle存储过程的方法
Sep 12 PHP
php面向对象全攻略 (七) 继承性
Sep 30 PHP
PHP+MYSQL会员系统的登陆即权限判断实现代码
Sep 23 PHP
php中并发读写文件冲突的解决方案
Oct 25 PHP
8个必备的PHP功能实例代码
Oct 27 PHP
Destoon实现多表查询示例
Aug 21 PHP
两千行代码的PHP学习笔记汇总
Oct 05 PHP
PHP实现权限管理功能示例
Sep 22 PHP
PHP实现文件上传操作和封装
Mar 04 PHP
PHP大文件及断点续传下载实现代码
Aug 18 PHP
PHP autoload使用方法及步骤详解
Sep 05 PHP
PHP实现将base64编码字符串转换成图片示例
Jun 22 #PHP
PHP实现正则匹配所有括号中的内容
Jun 22 #PHP
PHP实现 APP端微信支付功能
Jun 22 #PHP
thinkPHP实现基于ajax的评论回复功能
Jun 22 #PHP
php strftime函数的详细用法
Jun 21 #PHP
PHP获取本周所有日期或者最近七天所有日期的方法
Jun 20 #PHP
ThinkPHP5.0 图片上传生成缩略图实例代码说明
Jun 20 #PHP
You might like
phpmyadmin 3.4 空密码登录的实现方法
2010/05/29 PHP
PHP中根据IP地址判断城市实现城市切换或跳转代码
2012/09/04 PHP
php按百分比生成缩略图的代码分享
2014/05/10 PHP
日常整理PHP中简单的图形处理(经典)
2015/10/26 PHP
php微信开发之音乐回复功能
2018/06/14 PHP
js异或加解密效果代码
2008/06/25 Javascript
jquery text()要注意啦
2009/10/30 Javascript
javascript中的作用域scope介绍
2010/12/28 Javascript
javascript面向对象入门基础详细介绍
2012/09/05 Javascript
用Jquery选择器计算table中的某一列某一行的合计
2014/08/13 Javascript
JS实现可缩放、拖动、关闭和最小化的浮动窗口完整实例
2015/03/04 Javascript
C#中使用迭代器处理等待任务
2015/07/13 Javascript
Javascript技术栈中的四种依赖注入详解
2016/02/23 Javascript
vue开发心得和技巧分享
2016/10/27 Javascript
JS中with的替代方法与String中的正则方法详解
2016/12/23 Javascript
详解weex默认webpack.config.js改造
2018/01/08 Javascript
三分钟学会用ES7中的Async/Await进行异步编程
2018/06/14 Javascript
产制造追溯系统之通过微信小程序实现移动端报表平台
2019/06/03 Javascript
angular6开发steps步骤条组件
2019/07/04 Javascript
基于JS实现视频上传显示进度条
2020/05/12 Javascript
小程序中手机号识别的示例
2020/12/14 Javascript
Python的Django框架安装全攻略
2015/07/15 Python
python 编程之twisted详解及简单实例
2017/01/28 Python
Python数据分析之如何利用pandas查询数据示例代码
2017/09/01 Python
python的re正则表达式实例代码
2018/01/24 Python
Python3.5面向对象与继承图文实例详解
2019/04/24 Python
Pandas将列表(List)转换为数据框(Dataframe)
2020/04/24 Python
什么是python的id函数
2020/06/11 Python
彪马日本官网:PUMA日本
2019/01/31 全球购物
C++面试题目
2013/06/25 面试题
先进工作者获奖感言
2014/02/08 职场文书
销售经理岗位职责
2014/03/16 职场文书
揭牌仪式策划方案
2014/05/28 职场文书
网吧七夕活动策划方案
2014/08/31 职场文书
只需要12页,掌握撰写一流商业计划书的技巧
2019/05/07 职场文书
SQL Server中使用表变量和临时表
2022/05/20 SQL Server