2016-11-06 24 views
0

我有一个数组是这样的:如何重新启动数组键?

$arr = array("2"=>"red", "5"=>"blue", "3"=>"black", "12"=>"orange"); 

现在我需要重写所有的数组项。所以这是例外输出:

$newarr = array("0"=>"red", "1"=>"blue", "2"=>"black", "3"=>"orange"); 

这样做有可能吗?

+0

使用'array_values' –

回答

2

您可以使用array_values()

$newarr = array_values($arr); 

或者只是简单地覆盖以前的变量,新的数组:

$arr = array_values($arr); 
0

你可以试试这个实现预期结果

$arr = array("2"=>"red", "5"=>"blue", "3"=>"black", "12"=>"orange"); 
$newarr = []; 

foreach ($arr as $index => $value) { 
    $newarr[] = $value; 
} 
+0

你想说的话newarr $ =阵列();对? –

+0

@LajosArpad'$ newarr = [];''和'newarr = array();'两者都是相同的 – harigorana

+0

而且这两个都不是必需的,您可以将其删除。虽然两者都在做同样的事情,但一个人可以使用旧版本的PHP,另一个不会使用 – Xorifelse

0
$a = 0; 
foreach ($arr as $i=>$value) { 
$newwarr[$a] = $value; 
$a++; 
} 
+0

我不知道是谁投你倒票,你的代码有效,我正在投票 –

2

只是使用th Ëarray_values功能:

$newarr = array_values($arr);