Menu
Coddy logo textTech

Modifying Values by Key

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

Tout comme vous avez appris à modifier les éléments d'un tableau indexé par leur position, vous pouvez mettre à jour les valeurs dans les tableaux associatifs en utilisant leurs clés. La syntaxe est identique : affectez une nouvelle valeur à une clé existante.

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

$person["age"] = 26;
$person["city"] = "London";

echo $person["age"];  // 26
echo $person["city"]; // London
?>

Lorsque vous affectez une valeur à une clé qui existe déjà, PHP remplace simplement l'ancienne valeur par la nouvelle. La clé elle-même reste inchangée — seule sa valeur associée est mise à jour.

Ceci est utile lorsque les données doivent changer au fil du temps. Par exemple, mettre à jour le statut d'un utilisateur, changer le prix d'un produit ou corriger des informations saisies de manière incorrecte. La clé sert de point de référence stable tandis que la valeur peut être modifiée selon les besoins.

challenge icon

Défi

Facile

Lisez une ligne d'entrée contenant un objet JSON représentant les informations d'un produit (par exemple, {"name": "Laptop", "price": 999, "stock": 50}).

Ensuite, lisez quatre entrées supplémentaires :

  • Une chaîne key1 - la première clé à mettre à jour
  • Une chaîne value1 - la nouvelle valeur pour key1
  • Une chaîne key2 - la deuxième clé à mettre à jour
  • Une chaîne value2 - la nouvelle valeur pour key2

Créez un tableau associatif à partir de l'entrée JSON, puis :

  1. Mettez à jour la valeur associée à key1 par value1
  2. Mettez à jour la valeur associée à key2 par value2
  3. Affichez la valeur mise à jour pour key1
  4. Affichez la valeur mise à jour pour key2

Affichez chaque résultat sur une ligne distincte.

Exemple :

Si les entrées sont {"name": "Laptop", "price": 999, "stock": 50}, price, 1099, stock, et 45, la sortie devrait être :

1099
45

Si les entrées sont {"city": "Paris", "country": "France", "population": 2000000}, city, London, country, et UK, la sortie devrait être :

London
UK

Essayez vous-même

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

// Lire les clés et les valeurs à mettre à jour
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));

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

// TODO: Écrivez votre code ci-dessous
// 1. Mettre à jour la valeur associée à key1 par value1
// 2. Mettre à jour la valeur associée à key2 par value2
// 3. Afficher les valeurs mises à jour

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