Php 从月份列表中获取最后三个月

Php 从月份列表中获取最后三个月,php,codeigniter,date,time,Php,Codeigniter,Date,Time,我必须从月份列表中找出最后三个月 例如:- 月份名单如下:- 2016年6月16日、3月16日、12月16日、1月17日、10月16日、11月16日 所以我需要 Jan17 Dec16 and Nov16 过去三个月 有什么办法可以找到吗?请试试这种方法,它会100%有效 <?php $month_arr = array('Jun16','Mar16','Dec16','Jan17','Oct16','Nov16'); /* Convert dates in y-m-d format

我必须从月份列表中找出最后三个月

例如:-

月份名单如下:-

2016年6月16日、3月16日、12月16日、1月17日、10月16日、11月16日

所以我需要

Jan17
Dec16
and Nov16
过去三个月


有什么办法可以找到吗?

请试试这种方法,它会100%有效

<?php

$month_arr = array('Jun16','Mar16','Dec16','Jan17','Oct16','Nov16');

/* Convert dates in y-m-d format */
foreach ($month_arr as $key => $ma) {
    $output    = str_split($ma, 3);
    $full_date = $output[1].'-'.date('m', strtotime($output[0])).'-01';
    $months[]  = $full_date;
}

/* Now sort all dates in DESC order */
$dates = array();
foreach ($months as $u)
 {
    $dates[] = $u;
 }
array_multisort($dates, SORT_DESC, $months);

/* Get latest 3 months */
$last_three_months = array_slice($months, 0, 3);

/* Convert last 3 months into required format */
foreach($last_three_months as $lm)
{
    $parsed_last_three_months[] = date('My',strtotime($lm));
}

echo "<pre>";
print_r($parsed_last_three_months);

?>


希望它能起作用。如果完成了,请告诉我:)

你能展示一下你已经尝试过的吗?月名字符串长度3将是固定的?月列表将是字符串格式或数组格式?是的,月名长度3是固定的编辑是数组格式好问题:)