当前位置:  首页>> 技术小册>> PHP合辑3-数组函数

array_slice()是PHP的内置函数,用于通过切割数组来获取数组的一部分,根据用户的选择。

语法:

array_slice(array,start_point, $slicing_range, preserve)

参数:该函数可以接受四个参数,如下所述:

$array(必需):此参数指的是我们要切割的原始数组。

$start_point(必需):此参数指的是进行切割的数组的起始位置。必须提供此值。如果提供的值是负数,则函数从数组的末尾开始切割,即-1指的是数组的最后一个元素。

$slicing _range(可选):此参数指的是需要切割的范围或限制点。负值将指示字符串的末尾计数。现在,这也可以留空。留空时,函数将从起始点切割所有值,直到结束。

$preserve(可选):此参数只能采用两个布尔参数,即True或False。这将告诉函数是否保留键或重置它。True指的是保留键,false指的是重置键。False是默认值。

返回值:如前所述,此函数将返回所选的或切割后的数组部分。


以下程序说明了PHP中的array_slice()函数:

  1. <?php
  2. // PHP program to illustrate the
  3. // array_slice() function
  4. // Input array
  5. $array = array("ram", "krishna", "aakash",
  6. "gaurav", "raghav");
  7. // Slice from pos 1 to pos 3
  8. print_r(array_slice($array, 1, 3, true));
  9. ?>

output:

  1. Array
  2. (
  3. [1] => krishna
  4. [2] => aakash
  5. [3] => gaurav
  6. )

现在让我们尝试通过传递与上述程序中相同的值来观察输出,但是将保留键的值设置为False。

  1. <?php
  2. // PHP program to illustrate the
  3. // array_slice() function
  4. // input array
  5. $array = array("ram", "krishna", "aakash",
  6. "gaurav", "raghav");
  7. // Slice from pos 1 to pos 3
  8. print_r(array_slice($array, 1, 3, false));
  9. ?>

output:

  1. Array
  2. (
  3. [0] => krishna
  4. [1] => aakash
  5. [2] => gaurav
  6. )

下面的程序展示了当我们没有提供范围参数时会发生什么:

  1. <?php
  2. // PHP program to illustrate the
  3. // use of array_slice()
  4. // Input array
  5. $array = array("ram", "krishna", "aakash",
  6. "gaurav", "raghav");
  7. // Slice from pos 1 to end
  8. print_r(array_slice($array, 1));
  9. ?>

output:

  1. Array
  2. (
  3. [0] => krishna
  4. [1] => aakash
  5. [2] => gaurav
  6. [3] => raghav
  7. )

当我们将负参数作为起始位置传递时,下面的程序说明了array_slice()函数:

  1. <?php
  2. // PHP program to illustrate the
  3. // use of array_slice()
  4. // Input array
  5. $array = array("ram", "krishna", "aakash",
  6. "gaurav", "raghav");
  7. // Slice from pos 3rd position to
  8. // the end of the array
  9. print_r(array_slice($array, -3));
  10. ?>

output:

  1. Array
  2. (
  3. [0] => aakash
  4. [1] => gaurav
  5. [2] => raghav
  6. )

下面的程序展示了当我们尝试将负参数作为起始点和长度或范围时,会发生什么:

  1. <?php
  2. // PHP program to illustrate the
  3. // use of array_slice()
  4. // Input Array
  5. $array = array("ram", "krishna", "aakash",
  6. "gaurav", "raghav");
  7. // Slice from pos 1 to end
  8. print_r(array_slice($array, -3, -2, true));
  9. ?>

output:

  1. Array
  2. (
  3. [2] => aakash
  4. )

该分类下的相关小册推荐: