在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
)
然后我做了类似的事情:$reverse_months = array_reverse($months);
我不明白为什么结果如下:
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月的错误数组索引。谢谢!
答案 0 :(得分:4)
10,11和12是数字键,其中01,02等是命名键,php所做的是重新枚举数字键。其中有3个是0,1,2。命名键不会重新枚举(它们应该如何?)。要保留整数键,请使用
array_reverse($months, true);