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 相关文章推荐
超级简单的发送邮件程序
Oct 09 PHP
PHP新手上路(六)
Oct 09 PHP
PHP数字格式化
Dec 06 PHP
PHP入门学习的几个不错的实例代码
Jul 13 PHP
php中mt_rand()随机数函数用法
Nov 24 PHP
Zend Guard使用指南及问题处理
Jan 07 PHP
thinkphp3.2点击刷新生成验证码
Feb 16 PHP
php语言的7种基本的排序方法
Dec 28 PHP
php实现的一段简单概率相关代码
May 30 PHP
PHP实现从上往下打印二叉树的方法
Jan 18 PHP
php+jQuery ajax实现的实时刷新显示数据功能示例
Sep 12 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
Apr 04 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
基于mysql的论坛(1)
2006/10/09 PHP
浅析Dos下运行php.exe,出现没有找到php_mbstring.dll 错误的解决方法
2013/06/29 PHP
php将图片保存入mysql数据库失败的解决方法
2014/12/27 PHP
Laravel中为什么不使用blpop取队列详析
2018/08/01 PHP
PHP的简单跳转提示的实现详解
2019/03/14 PHP
php设计模式之代理模式分析【星际争霸游戏案例】
2020/03/23 PHP
Yii框架小部件(Widgets)用法实例详解
2020/05/15 PHP
统一接口:为FireFox添加IE的方法和属性的js代码
2007/03/25 Javascript
Array栈方法和队列方法的特点说明
2014/01/24 Javascript
javascript的几种继承方法介绍
2016/03/22 Javascript
AngularJS指令详解及示例代码
2016/08/16 Javascript
jQuery ajax的功能实现方法详解
2017/01/06 Javascript
JS实现上传图片的三种方法并实现预览图片功能
2017/07/14 Javascript
Vue数组更新及过滤排序功能
2017/08/10 Javascript
详解Vue.js在页面加载时执行某个方法
2018/11/20 Javascript
Node.js API详解之 repl模块用法实例分析
2020/05/25 Javascript
JS实现悬浮球只在一侧滑动并且是横屏状态下
2020/08/19 Javascript
在Python程序中实现分布式进程的教程
2015/04/28 Python
Ubuntu 下 vim 搭建python 环境 配置
2017/06/12 Python
python之pyqt5通过按钮改变Label的背景颜色方法
2019/06/13 Python
python全栈知识点总结
2019/07/01 Python
Python实现给PDF添加水印的方法
2021/01/25 Python
html5各种页面切换效果和模态对话框用法总结
2014/12/15 HTML / CSS
推荐WEB开发者最佳HTML5和CSS3代码生成器
2015/11/24 HTML / CSS
澳大利亚快时尚鞋类市场:Billini
2018/05/20 全球购物
什么是Remote Module
2016/06/10 面试题
公务员培训自我鉴定
2013/09/19 职场文书
《苏珊的帽子》教学反思
2014/04/07 职场文书
应急管理培训方案
2014/06/12 职场文书
小学阳光体育活动总结
2014/07/05 职场文书
社保委托书怎么写
2014/08/02 职场文书
三年级学生期末评语
2014/12/26 职场文书
杭州西湖英语导游词
2015/02/03 职场文书
大学生个人学年总结
2015/02/15 职场文书
维护民族团结心得体会2016
2016/01/15 职场文书
分析Python list操作为什么会错误
2021/11/17 Python