PHP中具有错误索引的反向数组

PHP中具有错误索引的反向数组,php,arrays,reverse,Php,Arrays,Reverse,在PHP中,我有这样一个数组: Array ( [12] => Dec [01] => Jan [02] => Feb [03] => Mar [04] => Apr [05] => May [06] => Jun [07] => Jul [08] => Aug [09] => Sep [10] => Oct [

在PHP中,我有这样一个数组:

Array ( 
    [12] => Dec 
    [01] => Jan 
    [02] => Feb 
    [03] => Mar 
    [04] => Apr 
    [05] => May 
    [06] => Jun 
    [07] => Jul 
    [08] => Aug 
    [09] => Sep 
    [10] => Oct 
    [11] => Nov 
) 
Array ( 
    [0] => Nov 
    [1] => Oct 
    [09] => Sep 
    [08] => Aug 
    [07] => Jul 
    [06] => Jun 
    [05] => May 
    [04] => Apr 
    [03] => Mar 
    [02] => Feb 
    [01] => Jan 
    [2] => Dec 
)

然后我会这样做:
$reverse\u months=array\u reverse($months)

我不明白的是为什么结果会是这样:

Array ( 
    [12] => Dec 
    [01] => Jan 
    [02] => Feb 
    [03] => Mar 
    [04] => Apr 
    [05] => May 
    [06] => Jun 
    [07] => Jul 
    [08] => Aug 
    [09] => Sep 
    [10] => Oct 
    [11] => Nov 
) 
Array ( 
    [0] => Nov 
    [1] => Oct 
    [09] => Sep 
    [08] => Aug 
    [07] => Jul 
    [06] => Jun 
    [05] => May 
    [04] => Apr 
    [03] => Mar 
    [02] => Feb 
    [01] => Jan 
    [2] => Dec 
)
您可以清楚地看到,与原始的
$months
数组相比,过去三个月的索引错误:-(


任何人都可以解释为什么会发生这种奇怪的行为,以及我如何修复它吗?结果是我想要的结果,除了十月、十一月和十二月的数组索引错误。谢谢!

10、11和12是数字键,其中01、02等是命名键,php所做的是重新计算编号的键。有e 3,因此0,1,2。命名键不会被重新计算(它们应该如何计算?)。要同时保留整数键,请使用

array_reverse($months, true);

10、11和12是数字键,其中01、02等是命名键,php所做的是重新计算编号键。其中有3个是0、1、2。命名键不重新计算(应该如何计算)。要保留整数键,请使用

array_reverse($months, true);

$reverse\u months=array\u reverse($months,true);您是否尝试过
$reverse\u months=array\u reverse($months,true);
?尝试此
array\u reverse($input,true)
;查看array\u reverse$reverse\u months=array\u reverse($months,true)的说明;是否尝试过
$reverse\u months=array\u reverse($months,true)
?试试这个
array\u reverse($input,true)
;看看array\u reverse的描述w,有时候答案很简单,让你抓狂:D Life saver,非常感谢!哇,有时候答案很简单,让你抓狂:D Life saver,非常感谢!