Ds\Sequence::slice

(PECL ds >= 1.0.0)

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

Description

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

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

Liste de paramètres

index

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

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

length

Si une longueur est donnée et est positive, la sous-séquence résultante aura jusqu'à autant de valeurs. Si la longueur entraîne un dépassement, seules les valeurs jusqu'à la fin de la séquence seront incluses. Si une longueur est donnée et est négative, la sous-séquence s'arrêtera à autant de valeurs de la fin. Si une longueur n'est pas fournie, la sous-séquence 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