Ds\Set::slice

(PECL ds >= 1.0.0)

Ds\Set::slice Возвращает поднабор из заданного диапазона

Описание

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

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

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

index

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

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

length

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

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

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

Примеры

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

<?php
$set 
= new \Ds\Set(["a""b""c""d""e"]);

// Поднабор с индекса 2
print_r($set->slice(2));

// Поднабор с индекса 1 с длиной 3
print_r($set->slice(13));

// Поднабор с индекса 1
print_r($set->slice(1));

// Поднабор с индекса 2 с конца
print_r($set->slice(-2));

// Поднабор от индекса 1 с начала до индекса 1 с конца
print_r($set->slice(1, -1));
?>

Результатом выполнения данного примера будет что-то подобное:

Ds\Set Object
(
    [0] => c
    [1] => d
    [2] => e
)
Ds\Set Object
(
    [0] => b
    [1] => c
    [2] => d
)
Ds\Set Object
(
    [0] => b
    [1] => c
    [2] => d
    [3] => e
)
Ds\Set Object
(
    [0] => d
    [1] => e
)
Ds\Set Object
(
    [0] => b
    [1] => c
    [2] => d
)