国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

分享3個php獲取日歷的函數

2024-09-04 11:42:33
字體:
來源:轉載
供稿:網友

本文給大家匯總了3個php獲取日歷的函數,分別是php獲取指定日期的月份的日歷、獲取指定日期所在月的開始日期與結束日期、獲取當前星期的日期范圍,都是比較常用的方法,有需要的小伙伴可以參考下。

提供一個日期,獲取這個日期的星期對應日歷列表,鍵為星期標示:

  1. $month_date = '2015-09-25'
  2. $start_time = strtotime($month_date); 
  3. $start_week = date('w'$start_time); 
  4. $total_month_day = date('t'$start_time); 
  5.    
  6. $weeks_in_month = ceil(($start_week+$total_month_day)/7); 
  7.    
  8. $month_day_arr = []; 
  9. $start_month_day = 1; 
  10. for($i=0;$i<$weeks_in_month;$i++) { 
  11.    
  12.   for($j=0;$j<7;$j++){ 
  13.     if($i ==0 && $j >= $start_week) { 
  14.       $month_day_arr[$i][$j] = $start_month_day
  15.       $start_month_day++; 
  16.     } elseif($i == 0) { 
  17.       $month_day_arr[$i][$j] = ''
  18.     } else { 
  19.       $month_day_arr[$i][$j] = $start_month_day
  20.       $start_month_day++; 
  21.     } 
  22.    
  23.     if($start_month_day > $total_month_day){ 
  24.       break
  25.     } 
  26.   } 
  27.    
  28. echo "<pre>"
  29. print_r($month_day_arr); 
  30.    
  31. Array 
  32.   [0] => Array 
  33.     ( 
  34.       [0] =>  
  35.       [1] =>  
  36.       [2] => 1 
  37.       [3] => 2 
  38.       [4] => 3 
  39.       [5] => 4 
  40.       [6] => 5 
  41.     ) 
  42.    
  43.   [1] => Array 
  44.     ( 
  45.       [0] => 6 
  46.       [1] => 7 
  47.       [2] => 8 
  48.       [3] => 9 
  49.       [4] => 10 
  50.       [5] => 11 
  51.       [6] => 12 
  52.     ) 
  53.    
  54.   [2] => Array 
  55.     ( 
  56.       [0] => 13 
  57.       [1] => 14 
  58.       [2] => 15 
  59.       [3] => 16 
  60.       [4] => 17 
  61.       [5] => 18 
  62.       [6] => 19 
  63.     ) 
  64.    
  65.   [3] => Array 
  66.     ( 
  67.       [0] => 20 
  68.       [1] => 21 
  69.       [2] => 22 
  70.       [3] => 23 
  71.       [4] => 24 
  72.       [5] => 25 
  73.       [6] => 26 
  74.     ) 
  75.    
  76.   [4] => Array 
  77.     ( 
  78.       [0] => 27 
  79.       [1] => 28 
  80.       [2] => 29 
  81.       [3] => 30 
  82.     ) 
  83.    

獲取指定日期所在月的開始日期與結束日期:

  1. /** 
  2.    * @param string $date 
  3.    * @param boolean 為true返回開始日期,否則返回結束日期 
  4.    * @return array 
  5.    * @access private 
  6.    */ 
  7.   private function getMonthRange( $date$returnFirstDay = true ) { 
  8.     $timestamp = strtotime$date ); 
  9.     if ( $returnFirstDay ) { 
  10.       $monthFirstDay = date'Y-m-1 00:00:00'$timestamp ); 
  11.       return $monthFirstDay
  12.     } else { 
  13.       $mdays = date't'$timestamp ); 
  14.       $monthLastDay = date'Y-m-' . $mdays . ' 23:59:59'$timestamp ); 
  15.       return $monthLastDay
  16.     } 
  17.   } 

獲取當前星期的日期范圍,也就是從星期一到星期日的日期范圍。

  1. function getWeekRange($date){ 
  2. $ret=array(); 
  3. $timestamp=strtotime($date); 
  4. $w=strftime('%u',$timestamp); 
  5. $ret['sdate']=date('Y-m-d 00:00:00',$timestamp-($w-1)*86400); 
  6. $ret['edate']=date('Y-m-d 23:59:59',$timestamp+(7-$w)*86400); 
  7. return $ret
  8. //author:zhxia 獲取指定日期所在月的開始日期與結束日期 
  9. function getMonthRange($date){ 
  10. $ret=array(); 
  11. $timestamp=strtotime($date); 
  12. $mdays=date('t',$timestamp); 
  13. $ret['sdate']=date('Y-m-1 00:00:00',$timestamp); 
  14. $ret['edate']=date('Y-m-'.$mdays.' 23:59:59',$timestamp); 
  15. return $ret
  16. //author:zhxia 以上兩個函數的應用 
  17. function getFilter($n){ 
  18. $ret=array(); 
  19. switch($n){ 
  20. case 1:// 昨天 
  21. $ret['sdate']=date('Y-m-d 00:00:00',strtotime('-1 day')); 
  22. $ret['edate']=date('Y-m-d 23:59:59',strtotime('-1 day')); 
  23. break
  24. case 2://本星期 
  25. $ret=getWeekRange(date('Y-m-d')); 
  26. break
  27. case 3://上一個星期 
  28. $strDate=date('Y-m-d',strtotime('-1 week')); 
  29. $ret=getWeekRange($strDate); 
  30. break
  31. case 4: //上上星期 
  32. $strDate=date('Y-m-d',strtotime('-2 week')); 
  33. $ret=getWeekRange($strDate); 
  34. break
  35. case 5: //本月 
  36. $ret=getMonthRange(date('Y-m-d')); 
  37. break
  38. case 6://上月 
  39. $strDate=date('Y-m-d',strtotime('-1 month')); 
  40. $ret=getMonthRange($strDate); 
  41. break
  42. return $ret
  43. }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 闸北区| 遵义县| 宝清县| 临猗县| 陵川县| 平泉县| 麻栗坡县| 广平县| 马鞍山市| 沂南县| 都匀市| 新营市| 合江县| 云阳县| 文山县| 宾阳县| 通许县| 潜江市| 临江市| 宁河县| 祁阳县| 乌拉特中旗| 白沙| 永嘉县| 瓮安县| 泊头市| 涿鹿县| 湾仔区| 大安市| 石楼县| 县级市| 建水县| 安乡县| 绥滨县| 象州县| 铁岭市| 历史| 礼泉县| 闻喜县| 肇源县| 绍兴市|