您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“PHP如何實現獲取某個月份周次信息”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“PHP如何實現獲取某個月份周次信息”這篇文章吧。
具體如下:
<?php function getMonthweeks($date){ $ret=array(); $stimestamp=strtotime($date); $mdays=date('t',$stimestamp); $msdate=date('Y-m-d',$stimestamp); $medate=date('Y-m-'.$mdays,$stimestamp); $etimestamp = strtotime($medate); //獲取第一周 $zcsy=6-date('w',$stimestamp);//第一周去掉第一天還有幾天 $zcs1=$msdate; $zce1=date('Y-m-d',strtotime("+$zcsy day",$stimestamp)); $ret[1]="第1周".$zcs1.'~'.$zce1; //獲取中間周次 $jzc=0; //獲得當前月份是6周次還是5周次 $jzc0=""; $jzc6=""; for($i=$stimestamp; $i<=$etimestamp; $i+=86400){ if(date('w', $i) == 0){$jzc0++;} if(date('w', $i) == 6){$jzc6++;} } if($jzc0==5 && $jzc6==5) { $jzc=5; }else{ $jzc=4; } date_default_timezone_set('PRC'); $t = strtotime('+1 monday '.$msdate); $n = 1; for($n=1; $n<$jzc; $n++) { $b = strtotime("+$n week -1 week", $t); $dsdate=date("Y-m-d", strtotime("-1 day", $b)); $dedate=date("Y-m-d", strtotime("5 day", $b)); $jzcz=$n+1; $ret[$jzcz]="第".$jzcz."周".$dsdate.'~'.$dedate; } //獲取最後一周 $zcsy=date('w',$etimestamp);//最後一周是周幾日~六 0~6 $zcs1=date('Y-m-d',strtotime("-$zcsy day",$etimestamp)); $zce1=$medate; $jzcz=$jzc+1; $ret[$jzcz]="第".$jzcz."周".$zcs1.'~'.$zce1; return $ret; } $ret=getMonthweeks('2012-12-01'); for($i=0; $i<=count($ret); $i++) { echo @$ret[$i]."<br />"; } ?>
運行結果如下:
第1周2012-12-01~2012-12-01
第2周2012-12-02~2012-12-08
第3周2012-12-09~2012-12-15
第4周2012-12-16~2012-12-22
第5周2012-12-23~2012-12-29
第6周2012-12-30~2012-12-31
以上是“PHP如何實現獲取某個月份周次信息”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。