Menu
Coddy logo textTech

Extraire avec 'array_slice'

Fait partie de la section Logique & Flux du Journey PHP de Coddy — leçon 16 sur 68.

La fonction array_slice() vous permet d'extraire une portion d'un tableau sans modifier le tableau d'origine. Contrairement aux fonctions comme array_pop() ou array_shift() qui modifient le tableau source, array_slice() crée un nouveau tableau contenant uniquement les éléments que vous spécifiez.

La fonction prend deux paramètres principaux : l'offset (position de départ) et la longueur (combien d'éléments extraire) :

<?php
$scores = [95, 87, 92, 78, 85, 90, 88];
$topThree = array_slice($scores, 0, 3);
print_r($topThree);  // Affiche : Array ( [0] => 95 [1] => 87 [2] => 92 )
print_r($scores);    // Tableau original inchangé
?>

Le paramètre offset indique à PHP où commencer l'extraction (0 signifie le premier élément), tandis que le paramètre length spécifie combien d'éléments extraire. Vous pouvez également utiliser des valeurs négatives pour l'offset pour commencer à compter à partir de la fin du tableau.

Cette fonction est particulièrement utile lorsque vous devez travailler avec un sous-ensemble de données, comme l'affichage des premiers éléments d'une longue liste ou l'extraction d'une plage spécifique d'éléments pour le traitement, tout en gardant vos données d'origine intactes.

challenge icon

Défi

Facile

Vous recevrez trois entrées : un tableau de prix de produits au format JSON, une position de départ (offset) et le nombre d'éléments à extraire (length). Lisez les trois entrées, convertissez la chaîne JSON en un tableau, utilisez array_slice() pour extraire la portion spécifiée du tableau, et affichez la tranche extraite en utilisant print_r().

Format d'entrée : Trois lignes - la première ligne contient un tableau JSON de nombres (exemple : [29.99,15.50,42.00,8.75,33.25]), la deuxième ligne contient l'offset (position de départ), la troisième ligne contient la longueur (nombre d'éléments à extraire)

Sortie attendue : La portion extraite du tableau, affichée en utilisant print_r()

Essayez vous-même

<?php
// Lire le tableau JSON des prix
$json_input = fgets(STDIN);
$prices = (array)json_decode($json_input, true);

// Lire le décalage (position de départ)
$offset = intval(fgets(STDIN));

// Lire la longueur (nombre d'éléments à extraire)
$length = intval(fgets(STDIN));

// TODO : Écrivez votre code ci-dessous pour extraire la tranche et l'afficher

?>
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Logique & Flux