Ds\Vector::slice

(PECL ds >= 1.0.0)

Ds\Vector::slice 返回给定范围的子向量

描述

public Ds\Vector::slice(int $index, int $length = ?): Ds\Vector

创建给定范围的子向量。

参数

index

子向量开始的索引。

如果为正数,向量将从向量中的该索引开始。如果为负数,向量将从末尾开始计算。

length

如果给出长度且为正数,则生成的向量将包含最多该数量的值。如果长度导致溢出,则只包含到向量末尾的值。如果给出长度且为负数,则向量将从末尾开始计算该数量的值。如果未提供长度,则生成的向量将包含从索引到向量末尾的所有值。

返回值

给定范围的子向量。

示例

示例 #1 Ds\Vector::slice() 示例

<?php
$vector
= new \Ds\Vector(["a", "b", "c", "d", "e"]);

// 从 2 开始切片
print_r($vector->slice(2));

// 从 1 开始,长度为 3 切片
print_r($vector->slice(1, 3));

// 从 1 开始切片
print_r($vector->slice(1));

// 从末尾开始算起,从 2 开始切片
print_r($vector->slice(-2));

// 从末尾开始算起,从 1 到 1 切片
print_r($vector->slice(1, -1));
?>

以上示例将输出类似以下内容

Ds\Vector Object
(
    [0] => c
    [1] => d
    [2] => e
)
Ds\Vector Object
(
    [0] => b
    [1] => c
    [2] => d
)
Ds\Vector Object
(
    [0] => b
    [1] => c
    [2] => d
    [3] => e
)
Ds\Vector Object
(
    [0] => d
    [1] => e
)
Ds\Vector Object
(
    [0] => b
    [1] => c
    [2] => d
)
添加笔记

用户贡献笔记

此页面没有用户贡献的笔记。
To Top