比如给个时间段 2010-5-16 到2011-2-15
现在要求把它分割成一(月份或星期)的时间段
就是要把它分割成这样的数组:
array(
0=>array('start'=>'2010-5-16','end'=>2010-5-22'),
1=>array('start'=>'2010-5-23','end'=>2010-5-??'),//日期必须有效 不够天就到当月为止
......
)
高手来帮下忙,不甚感激
现在要求把它分割成一(月份或星期)的时间段
就是要把它分割成这样的数组:
array(
0=>array('start'=>'2010-5-16','end'=>2010-5-22'),
1=>array('start'=>'2010-5-23','end'=>2010-5-??'),//日期必须有效 不够天就到当月为止
......
)
高手来帮下忙,不甚感激
$ret = array();
$start = strtotime('2010-5-16');
$end = strtotime('2011-2-15');
$i = 0;while($start <= $end){
$ret[$i]['start'] = date('Y-m-d',$start);
$tmp = strtotime("+1 week",$start);
if($end<= $tmp)
$ret[$i]['end'] = date('Y-m-d',$end);
else
$ret[$i]['end'] = date('Y-m-d',$tmp);
$i++;
$start = strtotime("+1 day",$tmp);
}
print_r($ret);
$ret = array();
$start = strtotime('2010-12-16');
$end = strtotime('2011-3-15');
$i = 0;
while($start <= $end){
$ret[$i]['start'] = date('Y-m-d',$start);
//$tmp = strtotime("+1 week",$start);
$tmp = strtotime("+6 days",$start);
if($end<= $tmp)
$ret[$i]['end'] = date('Y-m-d',$end);
else
$ret[$i]['end'] = date('Y-m-d',$tmp);
$i++;
$start = strtotime("+1 day",$tmp);
}
print_r($ret);
这样就行拉
再次谢谢2位的帮忙!!!!!