Ds\Sequence::slice

(PECL ds >= 1.0.0)

Ds\Sequence::slice Renvoie une sous-séquence d'une plage donnée

Description

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

Créer une sous-séquence d'une plage donnée.

Liste de paramètres

index

L'index auquel commence la sous-séquence.

Si positif, le sous-deque commencera à cet index dans le deque. Si négatif, le sous-deque commencera à cette distance de la fin.

length

Si une longueur est donnée et est positive, le sous-deque résultant aura jusqu'à autant de valeurs. Si la longueur entraîne un dépassement, seules les valeurs jusqu'à la fin du deque seront incluses. Si une longueur est donnée et est négative, le sous-deque s'arrêtera à autant de valeurs de la fin. Si une longueur n'est pas fournie, le sous-deque contiendra toutes les valeurs entre l'index et la fin de la séquence.

Valeurs de retour

Une sous-séquence de la plage donnée.

Exemples

Exemple #1 Exemple de Ds\Sequence::slice()

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

// Découpe à partir de 2
print_r($sequence->slice(2));

// Découpe à partir de 1, pour une longueur de 3
print_r($sequence->slice(1, 3));

// Découpe à partir de 1 en avant
print_r($sequence->slice(1));

// Découpe à partir de 2 en arrière
print_r($sequence->slice(-2));

// Découpe de 1 à 1 de la fin
print_r($sequence->slice(1, -1));
?>

Résultat de l'exemple ci-dessus est similaire à :

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

User Contributed Notes

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