2013-10-05 31 views
0

假设存在一个数组:阵列键迷路,因为它们被认为是数字

$array = array(
    '1001' => 'a', 
    '1002' => 'b', 
    '1003' => 'c', 
); 

现在我们假设有人想扭转数组:

$array = array_reverse($array); 

的问题是,array_reverse似乎将所有数值转换为整数,然后重置索引:

0 => 'c' - should be '1003' => 'c' 
1 => 'b' - should be '1002' => 'b' 
2 => 'a' - should be '1001' => 'a' 

某人可能拥有的东西也尝试过是这样的 - 但没有任何运气(预期):

$array[(string) $index] = 'a'; 

你甚至可以把这种体验自己here on codepad

这怎么解决?我是否必须编写我自己的映射函数,它可以处理这个问题,或者有其他方法吗?

回答

6

你只需要使用下面的代码:

array_reverse($array, true) 

按照PHP文档,保存密钥,您必须第2个参数设置为true

+0

你说得对。谢谢。 – lampshade

相关问题