为什么array_values()
比foreach循环更好地重新索引数组?
示例1:
$arrays = [
1 => '0',
2 => '1',
3 => '2',
4 => '3',
5 => '',
6 => '',
7 => '7',
8 => [
0 => 'toto',
1 => 'manu',
2 => 'noé',
3 => 'david'
]
];
$arrayNonAssoc = [];
foreach ($arrays as $array) {
$arrayNonAssoc[] = $array;
}
所以示例1 是不能做的错误......
示例2:
$arrays = [
1 => '0',
2 => '1',
3 => '2',
4 => '3',
5 => '',
6 => '',
7 => '7',
8 => [
0 => 'toto',
1 => 'manu',
2 => 'noé',
3 => 'david'
]
];
var_dump(array_values($arrays));
我已经读过它,但我没有找到任何解释。 示例1 和示例2 都会返回相同的结果......
是关于表现吗?
答案 0 :(得分:9)
array_values
的用途,但除非您阅读并理解,否则foreach
可以做任何事情。array_values
是在幕后用C实现的本机PHP函数,可能比自定义PHP代码更高效。