PHP:保留数组_值的顺序
如果我有一个关联数组,它的结构如下PHP:保留数组_值的顺序,php,arrays,Php,Arrays,如果我有一个关联数组,它的结构如下 ( 1 => 'a', 2 => 'b', 0 => 'c' ) 如果所有键都是数字键,array\u values是否始终保证值在新数组中根据其以前键的值按时间顺序出现,即['c','a','b'] 如果没有,我该如何实现这一点呢?否,array\u values()不会以任何方式对值进行重新排序。它不在乎钥匙 其有效实施基本上是这样的: function array_values_impl(array $arra
(
1 => 'a',
2 => 'b',
0 => 'c'
)
如果所有键都是数字键,array\u values
是否始终保证值在新数组中根据其以前键的值按时间顺序出现,即['c','a','b']
如果没有,我该如何实现这一点呢?否,array\u values()
不会以任何方式对值进行重新排序。它不在乎钥匙
其有效实施基本上是这样的:
function array_values_impl(array $array)
{
$newArray = [];
foreach ($array as $item) {
$newArray[] = $item;
}
return $newArray;
}
如果要使用键对数组进行排序,请使用。否,array\u values()
不会以任何方式对值进行重新排序。它不在乎钥匙
其有效实施基本上是这样的:
function array_values_impl(array $array)
{
$newArray = [];
foreach ($array as $item) {
$newArray[] = $item;
}
return $newArray;
}
如果要使用键对数组进行排序,请使用。您可以先使用键对数组进行排序,然后使用array_values函数获取值 比如说
$array = array(
1 => 'a',
2 => 'b',
0 => 'c'
);
ksort($array);
print_r(array_values($array));
输出:
Array
(
[0] => c
[1] => a
[2] => b
)
您可以通过首先使用键对数组进行排序并通过array_values函数获取值来完成 比如说
$array = array(
1 => 'a',
2 => 'b',
0 => 'c'
);
ksort($array);
print_r(array_values($array));
输出:
Array
(
[0] => c
[1] => a
[2] => b
)
数字键指向索引数组,而不是associative@RomanPerekhrest不总是这样。在本例中,键是顺序的,但如果它们不是,例如1、3和5,该怎么办?数字键指向索引数组,而不是索引数组associative@RomanPerekhrest不总是这样。在本例中,键是顺序的,但如果它们不是,例如1、3和5,该怎么办?