所以你有一个数组
$input = ["red", "green", "blue", "yellow"];
数组切片
运行array_slice($input, 2)
将返回您通过$offset
(2) 请求的部分和$length
- 您省略的 3d 参数(这意味着与剩下的一样多)。另外有趣的是,$input
不是通过引用传递的,这意味着它将保持不变。
$result = array_slice($input, 2);
// $input == [0 => "red", 1 => "green", 2 => "blue", 3 => "yellow"];
// $result == [0 => "blue", 1 => "yellow"];
有一个可选的第四个参数来保留键,这意味着返回的键不变。
$result = array_slice($input, 2, null, true);
// $result == [2 => "blue", 3 => "yellow"];
数组拼接
这个函数类似于array_slice
,除了这次数组是通过引用传递的。因此该函数现在可以更改初始数组。此外,第 4 个参数接受一个应该替换切片部分的数组(如果省略,则表示该部分被替换为空数组)。
$result = array_splice($input, 2);
// $input = [0 => "red", 1 => "green"];
// $result == [0 => "blue", 1 => "yellow"];
$result = array_splice($input, 2, null, ["brown", "black"]);
// $input = [0 => "red", 1 => "green", 2 => "brown", 3 => "black"];
// $result == [0 => "blue", 1 => "yellow"];