我正在尝试并且仍然想知道如何获得包含当月所有日期的数组,它应该包含所有格式的日期:年 - 月 - 日。谢谢你的帮助!
答案 0 :(得分:17)
尝试:
// for each day in the month
for($i = 1; $i <= date('t'); $i++)
{
// add the date to the dates array
$dates[] = date('Y') . "-" . date('m') . "-" . str_pad($i, 2, '0', STR_PAD_LEFT);
}
// show the dates array
var_dump($dates);
答案 1 :(得分:4)
返回这样一个数组的简单函数可能如下所示:
function range_date($first, $last) {
$arr = array();
$now = strtotime($first);
$last = strtotime($last);
while($now <= $last ) {
$arr[] = date('Y-m-d', $now);
$now = strtotime('+1 day', $now);
}
return $arr;
}
如果需要,您可以通过将步骤(+1 day
)和输出格式(Y-m-d
)更改为可选参数来改进它。
答案 2 :(得分:2)
这个怎么样:
$list=array();
for($d=1; $d<=31; $d++)
{
$time=mktime(12, 0, 0, date('m'), $d, date('Y'));
if (date('m', $time)==date('m'))
$list[]=date('Y-m-d', $time);
}
var_dump($list);