Ds\Sequence::slice

(PECL ds >= 1.0.0)

Ds\Sequence::slice Возвращает под-коллекцию из заданного диапазона

Описание

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

Возвращает под-коллекцию из диапазона, заданного начальным индексом index и длиной length.

Список параметров

index

Индекс, задающий начало диапазона.

Если положительный, то будет отсчитываться от начала коллекции. Если отрицательный, то от конца.

length

Положительное значение определяет, сколько элементов будет взято. Если количество элементов коллекции меньше заданного значения, вернётся столько элементов, сколько есть. Отрицательное значение задаст индекс, отсчитанный от конца коллекции, определяющий конец диапазона. Если длина не задана, то будут возвращены все элементы коллекции от заданного индекса до конца коллекции.

Возвращаемые значения

Под-коллекция из заданного диапазона.

Примеры

Пример #1 Пример использования Ds\Sequence::slice()

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

// Диапазон от 2 до конца
print_r($sequence->slice(2));

// Диапазон от 1 с длиной 3
print_r($sequence->slice(1, 3));

// Диапазон от 1 до конца
print_r($sequence->slice(1));

// Диапазон от 2 с конца до начала
print_r($sequence->slice(-2));

// Диапазон от 1 от 1 с конца
print_r($sequence->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
)

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top