Menu
Coddy logo textTech

Supprimer avec 'array_shift'

Fait partie de la section Logique & Flux du Journey PHP de Coddy. Leçon 13 sur 68.

La fonction array_shift() supprime le premier élément d’un tableau et renvoie cette valeur supprimée. C’est l’inverse de array_unshift(), qui ajoute des éléments au début d’un tableau.

Voici comment cela fonctionne :

<?php
$queue = ["Alice", "Bob", "Charlie"];
$firstPerson = array_shift($queue);
echo $firstPerson;  // Affiche : Alice
print_r($queue);    // Outputs: Array ( [0] => Bob [1] => Charlie )
?>

Notez que array_shift() modifie à la fois le tableau d’origine et renvoie l’élément supprimé. Après avoir supprimé le premier élément, tous les éléments restants se décalent automatiquement vers le bas pour combler le vide : "Bob" passe de l’index 1 à l’index 0, et "Charlie" passe de l’index 2 à l’index 1.

Cette réindexation se produit automatiquement, ce qui garantit que votre tableau conserve une séquence numérique correcte. Si vous utilisez array_shift() sur un tableau vide, il renvoie null sans provoquer d’erreur.

Cette fonction est particulièrement utile pour implémenter des files d’attente, où vous traitez les éléments selon le principe « premier entré, premier sorti », comme pour gérer les clients dans une file ou traiter les tâches dans l’ordre où elles ont été reçues.

challenge icon

Défi

Facile

Vous recevrez deux entrées : un tableau initial de clients faisant la queue au format JSON et un nombre indiquant combien de clients servir. Lisez les deux entrées, convertissez la chaîne JSON en tableau, utilisez array_shift() le nombre de fois indiqué pour supprimer les clients servis au début de la file, puis affichez le tableau final à l’aide de print_r().

Format d’entrée : Deux lignes : la première ligne contient un tableau JSON (exemple : ["Alice","Bob","Charlie","Diana"]), la deuxième ligne contient le nombre de clients à servir (un nombre).

Sortie attendue : Le tableau après la suppression des clients servis au début de la file, affiché à l’aide de print_r()

Essayez vous-même

<?php
// Lire le tableau JSON des clients
$jsonInput = fgets(STDIN);
$customers = (array)json_decode($jsonInput, true);

// Lire le nombre de clients à servir
$numToServe = intval(fgets(STDIN));

// TODO: Écrivez votre code ci-dessous
// Utilisez array_shift() pour retirer les clients du début de la file


// Afficher le tableau final
print_r($customers);
?>
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

Entraînez-vous par vous-même : Compilateur PHP en ligne