Menu
Coddy logo textTech

Modifying Values by Key

Parte da seção Fundamentos do Journey de PHP da Coddy — lição 43 de 71.

Assim como você aprendeu a modificar elementos de arrays indexados por sua posição, você pode atualizar valores em arrays associativos usando suas chaves. A sintaxe é idêntica — atribua um novo valor a uma chave existente.

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

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

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

Quando você atribui um valor a uma chave que já existe, o PHP simplesmente substitui o valor antigo pelo novo. A chave em si permanece inalterada — apenas o valor associado a ela é atualizado.

Isso é útil quando os dados precisam mudar ao longo do tempo. Por exemplo, atualizar o status de um usuário, alterar o preço de um produto ou corrigir informações que foram inseridas incorretamente. A chave atua como um ponto de referência estável, enquanto o valor pode ser modificado conforme necessário.

challenge icon

Desafio

Fácil

Leia uma linha de entrada contendo um objeto JSON que representa as informações de um produto (ex: {"name": "Laptop", "price": 999, "stock": 50}).

Em seguida, leia mais quatro entradas:

  • Uma string key1 - a primeira chave a ser atualizada
  • Uma string value1 - o novo valor para key1
  • Uma string key2 - a segunda chave a ser atualizada
  • Uma string value2 - o novo valor para key2

Crie um array associativo a partir da entrada JSON e, em seguida:

  1. Atualize o valor associado a key1 para value1
  2. Atualize o valor associado a key2 para value2
  3. Imprima o valor atualizado em key1
  4. Imprima o valor atualizado em key2

Imprima cada resultado em uma linha separada.

Exemplo:

Se as entradas forem {"name": "Laptop", "price": 999, "stock": 50}, price, 1099, stock, e 45, a saída deve ser:

1099
45

Se as entradas forem {"city": "Paris", "country": "France", "population": 2000000}, city, London, country, e UK, a saída deve ser:

London
UK

Experimente você mesmo

<?php
// Ler a entrada JSON
$jsonInput = trim(fgets(STDIN));

// Ler as chaves e valores para atualizar
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));

// Converter JSON para array associativo
$product = (array)json_decode($jsonInput, true);

// TODO: Escreva seu código abaixo
// 1. Atualize o valor associado a key1 para value1
// 2. Atualize o valor associado a key2 para value2
// 3. Imprima os valores atualizados

?>
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos