Heim >Backend-Entwicklung >PHP-Tutorial >Erklären Sie PHP, um relevante Inhalte eines bestimmten Datums zu erhalten
Aus beruflichen Gründen muss ich das Start- und Enddatum der Woche ab Donnerstag abrufen, und PHP bietet keine Methode zum Abrufen des Start- und Enddatums dieser Woche, daher habe ich eine Methode für die zukünftige Verwendung geschrieben .
Berechnungsmethode:
<?php/** * 计算指定日期的一周开始及结束日期 * @param DateTime $date 日期 * @param Int $start 周几作为一周的开始 1-6为周一~周六,0为周日,默认0 * @retrun Array */function getWeekRange($date, $start=0){ // 将日期转时间戳 $dt = new DateTime($date); $timestamp = $dt->format('U'); // 获取日期是周几 $day = (new DateTime('@'.$timestamp))->format('w'); // 计算开始日期 if($day>=$start){ $startdate_timestamp = mktime(0,0,0,date('m',$timestamp),date('d',$timestamp)-($day-$start),date('Y',$timestamp)); }elseif($day<$start){ $startdate_timestamp = mktime(0,0,0,date('m',$timestamp),date('d',$timestamp)-7+$start-$day,date('Y',$timestamp)); } // 结束日期=开始日期+6 $enddate_timestamp = mktime(0,0,0,date('m',$startdate_timestamp),date('d',$startdate_timestamp)+6,date('Y',$startdate_timestamp)); $startdate = (new DateTime('@'.$startdate_timestamp))->format('Y-m-d'); $enddate = (new DateTime('@'.$enddate_timestamp))->format('Y-m-d'); return array($startdate, $enddate); }?>
Beispiel: Der Test beginnt von Montag bis Sonntag, um die Start- und Endzeit der Woche zu berechnen
<?php$date = '2016-04-27';for($start=0; $start<=6; $start++){ list($startdate, $enddate) = getWeekRange($date, $start); echo 'date:'.$date.' week start:'.$start.' range:'.$startdate.', '.$enddate.'<br>'; }?>
Ausgabe:
date:2016-04-27 week start:0 range:2016-04-24, 2016-04-30date:2016-04-27 week start:1 range:2016-04-25, 2016-05-01date:2016-04-27 week start:2 range:2016-04-26, 2016-05-02date:2016-04-27 week start:3 range:2016-04-27, 2016-05-03date:2016-04-27 week start:4 range:2016-04-21, 2016-04-27date:2016-04-27 week start:5 range:2016-04-22, 2016-04-28date:2016-04-27 week start:6 range:2016-04-23, 2016-04-29
In diesem Artikel wird der relevante Inhalt zum Abrufen des angegebenen Datums in PHP erläutert. Weitere Informationen finden Sie auf der chinesischen PHP-Website.
Verwandte Empfehlungen:
Detaillierte Erklärung, wie PHP eine eindeutige RequestID-Klasse generiert
So überprüfen Sie die Kapazität der Datenbanktabelle über MySQL
Erklärung, wie man mit php str_getcsv einen String in ein Array analysiert
Das obige ist der detaillierte Inhalt vonErklären Sie PHP, um relevante Inhalte eines bestimmten Datums zu erhalten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!