PHP获取一年有几周以及每周开始日期和结束日期 |
本文标签:php计算日期,php计算日期差 最近接了一个项目,其中有一需求是用php获取一年有几周以及每周开始日期和接触日期 。在网上找些资料没有合适的,于是自己做了一份,下面通过两种方式实现PHP获取一年有几周以及每周开始日期和结束日期 代码一: <?php header("Content-type:text/html;charset=utf-8"); date_default_timezone_set("Asia/Shanghai"); $year = (int)$_GET[year]; $week = (int)$_GET[week]; $weeks = date("W", mktime(0, 0, 0, 12, 28, $year)); echo $year . 年一共有 . $weeks . 周<br />; if ($week > $weeks || $week <= 0) { $week = 1; } if ($week < 10) { $week = 0 . $week; } $timestamp[start] = strtotime($year . W . $week); $timestamp[end] = strtotime(+1 week -1 day, $timestamp[start]); echo $year . 年第 . $week . 周开始时间戳: . $timestamp[start] . <br />; echo $year . 年第 . $week . 周结束时间戳: . $timestamp[end] . <br />; echo $year . 年第 . $week . 周开始日期: . date("Y-m-d", $timestamp[start]) . <br />; echo $year . 年第 . $week . 周结束日期: . date("Y-m-d", $timestamp[end]); ?> 代码二: <?php header("Content-type:text/html;charset=utf-8"); function getIsoWeeksInYear($year) { $date = new DateTime; $date->setISODate($year, 53); return ($date->format("W") === "53" ? 53 : 52); } function weekday($custom_date) { $week_start = date(d-m-Y, strtotime(this week monday, $custom_date)); $week_end = date(d-m-Y, strtotime(this week sunday, $custom_date)); $week_array[0] = $week_start; $week_array[1] = $week_end; return $week_array; } echo <br> Weeks in 2013<br> . getIsoWeeksInYear(2013); $weekday = weekday(strtotime(date(d-m-Y, strtotime(5-8-2013)))); echo <br> 10-8-2013; echo <br>Start: . $weekday[0]; echo <br>End: . $weekday[1]; ?> 以上本文的全部内容,希望对大家学习PHP获取一年有几周以及每周开始日期和结束日期,有所帮助 。 |