我通过循环构建了一系列日期:
$months = array();
while($j<=12)
{
$months[] = '2013- .$j . '-01';
$j++
}
这就像我想要的那样回响。但是,当我使用date(F, $months[$j])
函数时,它每次都会在1月份出现。这是因为它不是公认的日期格式吗?我怎么能解决这个问题?
答案 0 :(得分:2)
您是否在此处复制之外的地方递增$j
?否则,你有答案。
$months = array();
$j = 1;
While($j<=12)
{
$months[] = '2013-' .$j . '-01';
$j++;
}
另外,你应该传递日期,而不是时间戳:
date('F', strtotime($months[$j]))
此外,您可能已经考虑到$ j从0开始,但是您将它们存储在索引0的$months
内。所以您将其更改为:
$months = array();
$j = 1;
While($j<=12)
{
$months[$j] = '2013-' .$j . '-01';
$j++;
}
答案 1 :(得分:1)
使用www.php.net/strtotime
date('F',strtotime($months[$j]))
答案 2 :(得分:0)
使用此:
$months = array();
$j=1;
While($j<=12)
{
$months[] = '2013-' .$j . '-01';
$j++;
}
$date = new DateTime($months[2]);
echo $date->format('F');