配列が存在するとしましょう:
$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';
ここ codepad でこれを自分で体験することもできます。
これはどのように解決できますか?これを処理できる独自のマッピング関数を作成する必要がありますか、それとも他の方法がありますか?