Menu
Coddy logo textTech

Recap - Key-Value Data Store

Parte da seção Fundamentos do Journey de PHP da Coddy. Lição 46 de 71.

challenge icon

Desafio

Fácil

Leia uma linha de entrada contendo um objeto JSON representando as informações de um contato (por exemplo, {"name": "Alice", "phone": "555-1234"}).

Em seguida, leia as seguintes entradas:

  • Uma string keyToCheck - uma chave para verificar se ela existe
  • Uma string keyToModify - uma chave existente para atualizar
  • Uma string newValue - o novo valor para keyToModify
  • Uma string newKey - uma nova chave para adicionar
  • Uma string newKeyValue - o valor para newKey

Crie um array associativo a partir do JSON de entrada e, em seguida, execute as seguintes operações:

  1. Verifique se keyToCheck existe. Imprima Found se ela existir, caso contrário imprima Not found.
  2. Modifique o valor em keyToModify para newValue.
  3. Adicione um novo par chave-valor usando newKey e newKeyValue.
  4. Imprima o valor atualizado em keyToModify.
  5. Imprima o valor em newKey.

Imprima cada resultado em uma linha separada.

Exemplo:

Se as entradas forem {"name": "Alice", "phone": "555-1234"}, email, name, Bob, city e Paris, a saída deve ser:

Not found
Bob
Paris

Se as entradas forem {"product": "Laptop", "price": 999}, price, product, Tablet, stock e 25, a saída deve ser:

Found
Tablet
25

Experimente você mesmo

<?php
// Leia a entrada JSON e converta para array associativo
$jsonInput = trim(fgets(STDIN));
$contact = (array)json_decode($jsonInput, true);

// Leia as outras entradas
$keyToCheck = trim(fgets(STDIN));
$keyToModify = trim(fgets(STDIN));
$newValue = trim(fgets(STDIN));
$newKey = trim(fgets(STDIN));
$newKeyValue = trim(fgets(STDIN));

// TODO: Escreva seu código abaixo
// 1. Verifique se keyToCheck existe e imprima o texto exato das instruções ou o texto exato das instruções
// 2. Modifique o valor em keyToModify para newValue
// 3. Adicione um novo par chave-valor usando newKey e newKeyValue
// 4. Imprima o valor atualizado em keyToModify
// 5. Imprima o valor em newKey

?>

Todas as lições de Fundamentos

Pratique por conta própria: Compilador de PHP online