Recap - Key-Value Data Store
Parte da seção Fundamentos do Journey de PHP da Coddy. Lição 46 de 71.
Desafio
FácilLeia 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 parakeyToModify - Uma string
newKey- uma nova chave para adicionar - Uma string
newKeyValue- o valor paranewKey
Crie um array associativo a partir do JSON de entrada e, em seguida, execute as seguintes operações:
- Verifique se
keyToCheckexiste. ImprimaFoundse ela existir, caso contrário imprimaNot found. - Modifique o valor em
keyToModifyparanewValue. - Adicione um novo par chave-valor usando
newKeyenewKeyValue. - Imprima o valor atualizado em
keyToModify. - 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
ParisSe as entradas forem {"product": "Laptop", "price": 999}, price, product, Tablet, stock e 25, a saída deve ser:
Found
Tablet
25Experimente 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
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic7Arrays Part 2 - Associative
Intro to Associative ArraysAccessing Values by KeyModifying Values by KeyAdding New Key-Value PairsCheck if Key ExistsRecap - Key-Value Data Store2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString OperatorsPratique por conta própria: Compilador de PHP online