Menu
Coddy logo textTech

Boucles avec clés et valeurs

Fait partie de la section Fondamentaux du Journey PHP de Coddy — leçon 50 sur 71.

Dans la leçon précédente, vous avez appris comment foreach vous donne accès à chaque valeur dans un tableau. Mais que faire si vous avez également besoin de la clé ? C'est particulièrement utile lors du travail avec des tableaux associatifs.

La boucle foreach a une syntaxe étendue qui fournit à la fois la clé et la valeur à chaque itération :

<?php
$person = [
    "name" => "Alice",
    "age" => 25,
    "city" => "Paris"
];

foreach ($person as $key => $value) {
    echo "$key: $value\n";
}
?>

Cela affiche :

name: Alice
age: 25
city: Paris

La syntaxe foreach ($array as $key => $value) assigne la clé actuelle à $key et la valeur correspondante à $value. Vous pouvez nommer ces variables comme vous le souhaitez—gardez-les descriptives.

Cela fonctionne également avec les tableaux indexés, où les clés sont les indices numériques :

<?php
$colors = ["red", "green", "blue"];

foreach ($colors as $index => $color) {
    echo "$index: $color\n";
}
?>

Cela produit en sortie :

0: red
1: green
2: blue

Avoir accès à la fois aux clés et aux valeurs rend facile l'affichage de données étiquetées ou l'exécution d'opérations qui dépendent de la clé.

challenge icon

Défi

Facile

Lisez une ligne unique d'entrée contenant un objet JSON représentant un produit avec des clés et des valeurs (par exemple, {"name":"Laptop","price":"999","stock":"25"}).

Utilisez une boucle foreach avec la syntaxe clé-valeur pour itérer à travers les données du produit. Affichez chaque clé et sa valeur correspondante au format :

[key] => [value]

Affichez chaque paire clé-valeur sur une ligne séparée.

Exemple 1 :

Si l'entrée est {"name":"Laptop","price":"999","stock":"25"}, la sortie devrait être :

name => Laptop
price => 999
stock => 25

Exemple 2 :

Si l'entrée est {"title":"PHP Basics","author":"John","pages":"350"}, la sortie devrait être :

title => PHP Basics
author => John
pages => 350

Exemple 3 :

Si l'entrée est {"city":"Paris","country":"France"}, la sortie devrait être :

city => Paris
country => France

Aide-mémoire

La foreach boucle peut fournir à la fois la clé et la valeur à chaque itération en utilisant la syntaxe étendue :

foreach ($array as $key => $value) {
    // utiliser $key et $value
}

Exemple avec un tableau associatif :

$person = [
    "name" => "Alice",
    "age" => 25,
    "city" => "Paris"
];

foreach ($person as $key => $value) {
    echo "$key: $value\n";
}

Sortie :

name: Alice
age: 25
city: Paris

Cette syntaxe fonctionne également avec les tableaux indexés, où les clés sont des indices numériques :

$colors = ["red", "green", "blue"];

foreach ($colors as $index => $color) {
    echo "$index: $color\n";
}

Sortie :

0: red
1: green
2: blue

Essayez vous-même

<?php
// Lire l'entrée JSON
$input = trim(fgets(STDIN));

// Convertir JSON en tableau associatif
$product = (array)json_decode($input, true);

// TODO: Write your code below
// Utiliser une boucle foreach avec la syntaxe clé-valeur pour itérer à travers les données du produit
// Afficher chaque clé et valeur au format : [clé] => [valeur]

?>
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 Fondamentaux