根据数组内容查找日期

时间:2013-07-27 07:03:51

标签: php

我需要根据当月显示月份。因此,如果是7月份,我想仅返回接下来的4个月,例如“八月”,“九月”,“十月”和“十一月”。

我该怎么做?

$mnth = date('F');
$mnth_arr = array("january","febuary","march","april","may","june","july","august","september","october","november","december");

3 个答案:

答案 0 :(得分:1)

DateTime类非常简单: -

$now = new \DateTime();
$interval = new \DateInterval('P1M');
$period = new \DatePeriod($now->add($interval), $interval, 4);

foreach($period as $date){
    echo $date->format('F') . "<br/>";
}

输出: -

  

八月
  九月
  十月
  十一月
  十二月

答案 1 :(得分:0)

$key = array_search($mnth, $mnth_arr);
for($key; $key<$key+4; $key++)
{
  echo $mnth_arr[$key];
}

答案 2 :(得分:0)

你可以使用相对偏移的strtotime来实现这一目标。

 // get the next four months.

 $ref = strtotime("+1 month");
 for($x =0; $x<4; $x++){
       echo  date("F", $ref)."\n";
       $ref = strtotime("+1 month", $ref);
 }