介绍:有时候需要获取某一个时间戳到当前时间的月份列表方便按照月份去查询。
/**
* 获取从开始到当前时间的月份列表
* @param $startMonth 月份时间戳
* @return array
*/
function getTimeLine($startMonth)
{
//定义一个空的数组
$timeline = array();
$StartMonth = date("Y-m-d", $startMonth); //开始日期
$EndMonth = date("Y-m-d", time()); //结束日期
$ToStartMonth = strtotime($StartMonth); //转换一下
$ToEndMonth = strtotime($EndMonth); //一样转换一下
$i = false; //开始标示
while ($ToStartMonth <= $ToEndMonth) {
$NewMonth = !$i ? date('Y-m', strtotime('+0 Month', $ToStartMonth)) : date('Y-m', strtotime('+1 Month', $ToStartMonth));
$ToStartMonth = strtotime($NewMonth);
$i = true;
$timeline[] = $NewMonth; //时间
}
array_pop($timeline); //去除掉多余的月份
return $timeline;
}
使用方法:
//获取月份列表
public function getTimeLine()
{
//1577808000,2020-01
$data = getTimeLine(1577808000);
return json(['code' => 1, 'data' => $data]);
}
返回结果如下:
{
"code": 1,
"data": [
"2020-01",
"2020-02",
"2020-03",
"2020-04",
"2020-05",
"2020-06",
"2020-07",
"2020-08",
"2020-09"
]
}