PHP array_slice 数组函数

  • 定义和用法

    array_slice - 从数组中取出一段
  • 版本支持

    PHP4 PHP5 PHP7
    支持 支持 支持
    V5.2.4 length 参数默认值改成 NULL。 现在 length 为 NULL 时,意思是说使用 array 的长度。 之前的版本里, NULL 的 length 的意思是长度为零(啥也不返回)。
    V5.0.2 增加了可选参数 preserve_keys 。
  • 语法

    array_slice (array $array , int $offset [, int $length = NULL [, bool $preserve_keys = false ]])   
    
    array_slice() 返回根据 offset 和 length 参数所指定的 array 数组中的一段序列。
  • 参数

    参数 必需的 描述
    array 输入的数组。
    offset 如果 offset 非负,则序列将从 array 中的此偏移量开始。如果 offset 为负,则序列将从 array 中距离末端这么远的地方开始。
    length 如果给出了 length 并且为正,则序列中将具有这么多的单元。如果给出了 length 并且为负,则序列将终止在距离数组末端这么远的地方。如果省略,则序列将从 offset 开始一直到 array 的末端。
    preserve_keys 注意 array_slice() 默认会重新排序并重置数组的数字索引。你可以通过将 preserve_keys 设为 TRUE 来改变此行为。
  • 返回值

    返回其中一段。 如果 offset 参数大于 array 尺寸,就会返回空的 array。
  • 示例

    <?php
    $input = array("a", "b", "c", "d", "e");
    
    $output = array_slice($input, 2);      // returns "c", "d", and "e"
    $output = array_slice($input, -2, 1);  // returns "d"
    $output = array_slice($input, 0, 3);   // returns "a", "b", and "c"
    
    // note the differences in the array keys
    print_r(array_slice($input, 2, -1));
    print '<br/>';
    print_r(array_slice($input, 2, -1, true));
    ?>
    
    尝试一下
  • 相关函数

    array_splice() - 去掉数组中的某一部分并用其它值取代
    unset() - 释放给定的变量
    array_chunk() - 将一个数组分割成多个