PHP使用array_slice之后数组的键被改变的解决方法

今天遇到一个问题,用股票代码作为key的数组在array_slice之后6开头的键值会变成0和1:
array_slice($totalResult, 0, 5);
Array
(
    [000950] => 78.6982
    [000960] => 76.982
    [0] => 76.8926
    [002541] => 76.7676
    [1] => 76.2656
)
在array_slice后面加上第四个参数true之后就正确了:
array_slice($totalResult, 0, 5, true);
Array
(
    [000950] => 78.6982
    [000960] => 76.982
    [600259] => 76.8926
    [002541] => 76.7676
    [600765] => 76.2656
)
array array_slice ( array $array , int $offset [, int $length = NULL [, bool $preserve_keys = false ]] )
的解释:
preserve_keys
注意 array_slice() 默认会重新排序并重置数组的数字索引。你可以通过将 preserve_keys 设为 TRUE 来改变此行为。