php数组重新填充键

Val*_*Val 0 php arrays sorting

嗨我有一个数组,我需要以有序的方式更改键,但不要更改值的顺序.例如

$a = array (
 0=>'h',
 1=>'blabla',
 2=>'yes'
);
Run Code Online (Sandbox Code Playgroud)

我用了

unset($a[1]);
Run Code Online (Sandbox Code Playgroud)

但我需要密钥重新开始计算密钥0,1,2 ... etccc所以我不会最终:

array(
 0 => 'h',
 2 => 'yes'
)
Run Code Online (Sandbox Code Playgroud)

但它应该回来:

array(
 0 => 'h',
 1 => 'yes'
)
Run Code Online (Sandbox Code Playgroud)

Ali*_*aru 5

您需要在数组上应用array_values来重新索引.

$a = array_values($a);
Run Code Online (Sandbox Code Playgroud)

额外奖励:如果您还需要订购价值,您可以使用排序,它也会重新索引您的数组.

注意:通过使用任何array_values或sort,您将丢失任何可能的字符串键.