PHP Conference Nagoya 2025

Ds\Vector::slice

(PECL ds >= 1.0.0)

Ds\Vector::slice Renvoie un sous-vecteur d'une plage donnée

Description

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

Créer un sous-vecteur d'une plage donnée.

Liste de paramètres

index

L'index auquel commence le sous-vecteur.

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

length

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

Valeurs de retour

Un sous-vecteur de la plage donnée.

Exemples

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

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

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

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

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

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

// Découpe de 1 à 1 de la fin
print_r($vector->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