实例
1.从数组的第三个元素(索引为 2)开始取出,并返回直到数组末端的所有元素:
<?php
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,2));
?>
输出
Array
(
[0] => blue
[1] => yellow
[2] => brown
)
2.从数组的第2个元素开始取出,并返回两个元素:
<?php
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,1,2));
?>
输出
Array
(
[0] => green
[1] => blue
)
3.使用负的 start 参数:如果该值设置为负数,则从后向前取 start 绝对值。 -2 意味着从数组的倒数第二个元素开始。
<?php
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,-2,1));
?>
输出
Array
(
[0] => yellow
)
4.带有设置为 true 的 preserve 参数:
<?php
// preserve 设置为 true,保留键名
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,1,2,true));
// 不保留键名设置为 false(默认)
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,1,2,false));
// 注意两个数组的键是不一样的
?>
输出
Array
(
[1] => green
[2] => blue
)
Array
(
[0] => green
[1] => blue
)
5.带有字符串和整数键名:如果数组有字符串键名,所返回的数组将保留键名 如果键名是字符串数字,键名不会被保留
<?php
$a=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow","e"=>"brown");
print_r(array_slice($a,1,2));
$a=array("a"=>"red","2a"=>"green","1"=>"blue","3"=>"yellow","4"=>"brown");
print_r(array_slice($a,1,2));
?>
输出
Array
(
[b] => green
[c] => blue
)
Array
(
[2a] => green
[0] => blue
)
定义和用法
array_slice() 函数返回数组中的选定部分。
语法
array_slice(array,start,length,preserve)
参数 | 描述 |
---|---|
array | 必需。规定数组。 |
start | 必需。数值。规定取出元素的开始位置。 0 = 第一个元素。 如果该值设置为正数,则从前往后开始取。 |
length | 可选。数值。规定被返回数组的长度。 如果该值设置为整数,则返回该数量的元素。如果该值设置为负数,则函数将在举例数组末端这么远的地方终止取出。如果该值未设置,则返回从 start 参数设置的位置开始直到数组末端的所有元素。 |
preserve | 可选。规定函数是保留键名还是重置键名。可能的值:
|