PHP获取指定日期是星期几的实现方法

本文实例讲述了PHP获取指定日期是星期几的实现方法。分享给大家供大家参考,具体如下:

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

<?php
  header("Content-type: text/html; charset=utf-8");
  //获取星期方法
  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("星期日","星期一","星期二","星期三","星期四","星期五","星期六");
    //获取数字对应的星期
    return $weekArr[$number_wk];
  }
  //测试
  $date="2016-08-20";
  echo get_week($date);
  //星期六
?>
/*
 * 获取日期对应的星期
 * 参数$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相关内容感兴趣的读者可查看本站专题:《php日期与时间用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

PS:这里再为大家推荐几款时间及日期相关工具供大家参考:

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

在线日期/天数计算器:

您可能感兴趣的文章:

  • 计算一段日期内的周末天数的php代码(星期六,星期日总和)
  • php获取本周星期一具体日期的方法
  • PHP计算一年多少个星期和每周的开始和结束日期
  • PHP获取当前日期所在星期(月份)的开始日期与结束日期(实现代码)
  • PHP获取一年中每个星期的开始和结束日期的方法
  • PHP实现今天是星期几的几种写法
  • php实现按天数、星期、月份查询的搜索框
  • PHP获取本周所有日期或者最近七天所有日期的方法
  • PHP
    获取某年第几周的开始日期和结束日期的实例
  • PHP
    实现公历日期与农历日期的互转换
  • PHP获取日期对应星期、一周日期、星期开始与结束日期的方法

在线日期计算器/相差天数计算器:

发表评论

电子邮件地址不会被公开。 必填项已用*标注