Menu
Coddy logo textTech

Modifying Values by Key

Parte de la sección Fundamentos del Journey de PHP de Coddy — lección 43 de 71.

Al igual que aprendiste a modificar elementos de arrays indexados por su posición, puedes actualizar valores en arrays asociativos usando sus claves. La sintaxis es idéntica—asigna un nuevo valor a una clave existente.

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

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

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

Cuando asignas un valor a una clave que ya existe, PHP simplemente reemplaza el valor antiguo con el nuevo. La clave en sí permanece sin cambios—solo se actualiza su valor asociado.

Esto es útil cuando los datos necesitan cambiar con el tiempo. Por ejemplo, actualizar el estado de un usuario, cambiar el precio de un producto o corregir información que se ingresó incorrectamente. La clave actúa como un punto de referencia estable mientras que el valor puede modificarse según sea necesario.

challenge icon

Desafío

Fácil

Lee una línea de entrada que contiene un objeto JSON que representa la información de un producto (por ejemplo, {"name": "Laptop", "price": 999, "stock": 50}).

Luego lee tres entradas más:

  • Una cadena key1 - la primera clave a actualizar
  • Una cadena value1 - el nuevo valor para key1
  • Una cadena key2 - la segunda clave a actualizar
  • Una cadena value2 - el nuevo valor para key2

Crea un arreglo asociativo a partir de la entrada JSON, luego:

  1. Actualiza el valor asociado con key1 a value1
  2. Actualiza el valor asociado con key2 a value2
  3. Imprime el valor actualizado en key1
  4. Imprime el valor actualizado en key2

Imprime cada resultado en una línea separada.

Ejemplo:

Si las entradas son {"name": "Laptop", "price": 999, "stock": 50}, price, 1099, stock y 45, la salida debería ser:

1099
45

Si las entradas son {"city": "Paris", "country": "France", "population": 2000000}, city, London, country y UK, la salida debería ser:

London
UK

Hoja de referencia

Para actualizar valores en arreglos asociativos, asigna un nuevo valor a una clave existente:

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

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

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

Cuando asignas un valor a una clave que ya existe, PHP reemplaza el valor antiguo con el nuevo. La clave permanece sin cambios—solo se actualiza su valor asociado.

Pruébalo tú mismo

<?php
// Leer la entrada JSON
$jsonInput = trim(fgets(STDIN));

// Leer las claves y valores a actualizar
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));

// Convertir JSON a array asociativo
$product = (array)json_decode($jsonInput, true);

// TODO: Escribe tu código a continuación
// 1. Actualizar el valor asociado con key1 a value1
// 2. Actualizar el valor asociado con key2 a value2
// 3. Imprimir los valores actualizados

?>
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos