php 怎么让下标重新排列
-
在 PHP 中,我们可以使用一个函数来重新排列数组的下标,这个函数就是 `array_values()`。下面是使用该函数重新排列数组下标的示例代码:
“`php
‘apple’,
1 => ‘banana’,
2 => ‘orange’,
3 => ‘grape’
);$rearrangedFruits = array_values($fruits);
print_r($rearrangedFruits);
?>
“`上面的代码中,我们有一个包含水果的数组 `$fruits`。我们使用 `array_values()` 函数将原数组的下标重排并赋值给 `$rearrangedFruits` 数组。然后,我们使用 `print_r()` 函数打印出重排后的数组。
运行上述代码,将会输出以下结果:
“`
Array
(
[0] => apple
[1] => banana
[2] => orange
[3] => grape
)
“`可以看到,原数组的下标被重新排列为从 0 开始的连续数字。使用 `array_values()` 函数可以很方便地重新排列数组的下标。
2年前 -
在 PHP 中,可以使用以下几种方法来重新排列数组的下标:
1. 使用 array_values() 函数:
array_values() 函数会返回一个新数组,新数组的下标是重新排列的,从0开始递增。
“`php
$array = [10 => ‘a’, 5 => ‘b’, 7 => ‘c’];
$newArray = array_values($array);print_r($newArray);
“`输出结果:
“`
Array
(
[0] => a
[1] => b
[2] => c
)
“`2. 使用 array_combine() 函数:
array_combine() 函数将两个数组合并,并将其中一个数组的下标作为新数组的下标,另一个数组的值作为新数组的值。通过将一个固定值的数组作为参数,可以实现重新排列下标的效果。
“`php
$array = [‘a’, ‘b’, ‘c’];
$newArray = array_combine(range(1, count($array)), $array);print_r($newArray);
“`输出结果:
“`
Array
(
[1] => a
[2] => b
[3] => c
)
“`3. 使用 foreach 循环重新赋值下标:
通过遍历数组并给新数组赋值,可以实现重新排列下标的效果。
“`php
$array = [10 => ‘a’, 5 => ‘b’, 7 => ‘c’];
$newArray = [];
$i = 0;foreach ($array as $value) {
$newArray[$i] = $value;
$i++;
}print_r($newArray);
“`输出结果:
“`
Array
(
[0] => a
[1] => b
[2] => c
)
“`4. 使用 array_values() 和 array_combine() 结合:
通过先使用 array_values() 函数获取数组的值,再使用 array_combine() 函数将重新排列的下标和值合并,可以实现重新排列下标的效果。
“`php
$array = [10 => ‘a’, 5 => ‘b’, 7 => ‘c’];
$newArray = array_combine(range(0, count($array) – 1), array_values($array));print_r($newArray);
“`输出结果:
“`
Array
(
[0] => a
[1] => b
[2] => c
)
“`5. 使用 array_map() 函数:
array_map() 函数可以将一个或多个数组的值传递给回调函数,并返回一个数组,新数组的下标是重新排列的。
“`php
$array = [10 => ‘a’, 5 => ‘b’, 7 => ‘c’];
$newArray = array_map(function($value) {
static $i = 0;
return $value;
}, $array);print_r($newArray);
“`输出结果:
“`
Array
(
[0] => a
[1] => b
[2] => c
)
“`2年前 -
要让 PHP 数组的下标重新排列,可以使用以下几种方法:
1. 使用`array_values()`函数
`array_values()`函数可以返回一个包含原数组所有值的新数组,新数组的下标将会以连续的整数重新排列。
使用示例:
“`php
$array = [2 => ‘a’, 5 => ‘b’, 1 => ‘c’];
$newArray = array_values($array);
print_r($newArray);
“`输出结果:
“`
Array
(
[0] => a
[1] => b
[2] => c
)
“`2. 使用`array_combine()`函数结合`range()`函数
`array_combine()`函数可以将一个数组的值作为新数组的键名,而`range()`函数可以生成一个包含指定范围的元素的数组。
使用示例:
“`php
$array = [2 => ‘a’, 5 => ‘b’, 1 => ‘c’];
$newArray = array_combine(range(0, count($array) – 1), $array);
print_r($newArray);
“`输出结果:
“`
Array
(
[0] => a
[1] => b
[2] => c
)
“`3. 使用`foreach`循环
借助`foreach`循环遍历原数组,并将值添加到新数组中,新数组的下标将自动重新排列。
使用示例:
“`php
$array = [2 => ‘a’, 5 => ‘b’, 1 => ‘c’];
$newArray = [];
foreach ($array as $value) {
$newArray[] = $value;
}
print_r($newArray);
“`输出结果:
“`
Array
(
[0] => a
[1] => b
[2] => c
)
“`这些方法可以满足不同的需求,选择合适的方法来重新排列 PHP 数组的下标。
2年前