分享3个php获取日历的函数_php技巧
本文给大家汇总了3个php获取日历的函数,分别是php获取指定日期的月份的日历、获取指定日期所在月的开始日期与结束日期、获取当前星期的日期范围,都是比较常用的方法,有需要的小伙伴可以参考下。
提供一个日期,获取这个日期的星期对应日历列表,键为星期标示
$month_date = '2015-09-25'; $start_time = strtotime($month_date); $start_week = date('w', $start_time); $total_month_day = date('t', $start_time); $weeks_in_month = ceil(($start_week+$total_month_day)/7); $month_day_arr = []; $start_month_day = 1; for($i=0;$i<$weeks_in_month;$i++) { for($j=0;$j<7;$j++){ if($i ==0 && $j >= $start_week) { $month_day_arr[$i][$j] = $start_month_day; $start_month_day++; } elseif($i == 0) { $month_day_arr[$i][$j] = ''; } else { $month_day_arr[$i][$j] = $start_month_day; $start_month_day++; } if($start_month_day > $total_month_day){ break; } } } echo "<pre class="brush:php;toolbar:false">"; print_r($month_day_arr); Array ( [0] => Array ( [0] => [1] => [2] => 1 [3] => 2 [4] => 3 [5] => 4 [6] => 5 ) [1] => Array ( [0] => 6 [1] => 7 [2] => 8 [3] => 9 [4] => 10 [5] => 11 [6] => 12 ) [2] => Array ( [0] => 13 [1] => 14 [2] => 15 [3] => 16 [4] => 17 [5] => 18 [6] => 19 ) [3] => Array ( [0] => 20 [1] => 21 [2] => 22 [3] => 23 [4] => 24 [5] => 25 [6] => 26 ) [4] => Array ( [0] => 27 [1] => 28 [2] => 29 [3] => 30 ) )
获取指定日期所在月的开始日期与结束日期
/** * @param string $date * @param boolean 为true返回开始日期,否则返回结束日期 * @return array * @access private */ private function getMonthRange( $date, $returnFirstDay = true ) { $timestamp = strtotime( $date ); if ( $returnFirstDay ) { $monthFirstDay = date( 'Y-m-1 00:00:00', $timestamp ); return $monthFirstDay; } else { $mdays = date( 't', $timestamp ); $monthLastDay = date( 'Y-m-' . $mdays . ' 23:59:59', $timestamp ); return $monthLastDay; } }
获取当前星期的日期范围,也就是从星期一到星期日的日期范围。
function getWeekRange($date){ $ret=array(); $timestamp=strtotime($date); $w=strftime('%u',$timestamp); $ret['sdate']=date('Y-m-d 00:00:00',$timestamp-($w-1)*86400); $ret['edate']=date('Y-m-d 23:59:59',$timestamp+(7-$w)*86400); return $ret; } //author:zhxia 获取指定日期所在月的开始日期与结束日期 function getMonthRange($date){ $ret=array(); $timestamp=strtotime($date); $mdays=date('t',$timestamp); $ret['sdate']=date('Y-m-1 00:00:00',$timestamp); $ret['edate']=date('Y-m-'.$mdays.' 23:59:59',$timestamp); return $ret; } //author:zhxia 以上两个函数的应用 function getFilter($n){ $ret=array(); switch($n){ case 1:// 昨天 $ret['sdate']=date('Y-m-d 00:00:00',strtotime('-1 day')); $ret['edate']=date('Y-m-d 23:59:59',strtotime('-1 day')); break; case 2://本星期 $ret=getWeekRange(date('Y-m-d')); break; case 3://上一个星期 $strDate=date('Y-m-d',strtotime('-1 week')); $ret=getWeekRange($strDate); break; case 4: //上上星期 $strDate=date('Y-m-d',strtotime('-2 week')); $ret=getWeekRange($strDate); break; case 5: //本月 $ret=getMonthRange(date('Y-m-d')); break; case 6://上月 $strDate=date('Y-m-d',strtotime('-1 month')); $ret=getMonthRange($strDate); break; } return $ret; }

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian

Comment configurer Visual Studio Code (VS Code) pour le développement PHP
