PHP获取一段时间内的日期列表的例子

作者:袖梨 2022-06-24

最近在做一个关于日程表的项目,给出一个开始时间和一个结束时间,需要列出这个时间段内的日期列表并同时判断是周几。经过研究,得出如下方法,和大家共享,方便有需要的朋友。

先贴一下此次需求的效果图:

PHP如何获取一段时间内的日期列表jquery1395368650656="144" />

代码如下 复制代码
/*
*参数分别是开始时间戳,结束时间戳
*/
function timeList($beginTimeStamp,$endTimeStamp){
if(!is_numeric($beginTimeStamp)||!is_numeric($endTimeStamp)||($endTimeStamp $tmp=array();
for($i=$beginTimeStamp;$i $tmp['timeStampList'][]=$i;
$tmp['dayList'][]=date('Y年m月d日',$i);
$tmp['dayWeek'][]=getWeek($i);
}
return $tmp;
}
function getWeek($timestamp){
$timestamp=date('w',$timestamp);
$str='';
switch($timestamp){
case '0':
$str.='周日';
break;
case '1':
$str.='周一';
break;
case '2':
$str.='周二';
break;
case '3':
$str.='周三';
break;
case '4':
$str.='周四';
break;
case '5':
$str.='周五';
break;
case '6':
$str.='周六';
break;
}
return $str;
}


php获取某段时间内每个月的方法,返回由这些月份组成的数组

代码如下 复制代码

/**
* 生成从开始月份到结束月份的月份数组
* @param int $start 开始时间戳
* @param int $end 结束时间戳
*/
function monthList($start,$end){
if(!is_numeric($start)||!is_numeric($end)||($end $start=date('Y-m',$start);
$end=date('Y-m',$end);
//转为时间戳
$start=strtotime($start.'-01');
$end=strtotime($end.'-01');
$i=0;//http://www.*php*erno*te.com/php-function/224.html
$d=array();
while($start //这里累加每个月的的总秒数 计算公式:上一月1号的时间戳秒数减去当前月的时间戳秒数
$d[$i]=trim(date('Y-m',$start),' ');
$start+=strtotime('+1 month',$start)-$start;
$i++;
}
return $d;
}例如:

echo '

';print_r(monthList(1395283229,1398960000));


例如:

echo '

';print_r(monthList(1395283229,1398960000));结果将得到如下:

Array
(
[0] => 2014-03
[1] => 2014-04
[2] => 2014-05
)

相关文章

精彩推荐