Recap - Key-Value Data Store
Parte de la sección Fundamentos del Journey de PHP de Coddy — lección 46 de 71.
Desafío
FácilLee una línea de entrada que contenga un objeto JSON que represente la información de un contacto (por ejemplo, {"name": "Alice", "phone": "555-1234"}).
Luego lee las siguientes entradas:
- Una cadena
keyToCheck- una clave para verificar si existe - Una cadena
keyToModify- una clave existente para actualizar - Una cadena
newValue- el nuevo valor parakeyToModify - Una cadena
newKey- una nueva clave para agregar - Una cadena
newKeyValue- el valor paranewKey
Crea un array asociativo a partir de la entrada JSON, luego realiza las siguientes operaciones:
- Verifica si
keyToCheckexiste. ImprimeFoundsi existe, de lo contrario imprimeNot found. - Modifica el valor en
keyToModifyanewValue. - Agrega un nuevo par clave-valor usando
newKeyynewKeyValue. - Imprime el valor actualizado en
keyToModify. - Imprime el valor en
newKey.
Imprime cada resultado en una línea separada.
Ejemplo:
Si las entradas son {"name": "Alice", "phone": "555-1234"}, email, name, Bob, city y Paris, la salida debería ser:
Not found
Bob
ParisSi las entradas son {"product": "Laptop", "price": 999}, price, product, Tablet, stock y 25, la salida debería ser:
Found
Tablet
25Pruébalo tú mismo
<?php
// Leer la entrada JSON y convertir a array asociativo
$jsonInput = trim(fgets(STDIN));
$contact = (array)json_decode($jsonInput, true);
// Leer las otras entradas
$keyToCheck = trim(fgets(STDIN));
$keyToModify = trim(fgets(STDIN));
$newValue = trim(fgets(STDIN));
$newKey = trim(fgets(STDIN));
$newKeyValue = trim(fgets(STDIN));
// TODO: Escribe tu código a continuación
// 1. Verificar si keyToCheck existe e imprimir "Found" o "Not found"
// 2. Modificar el valor en keyToModify a newValue
// 3. Agregar un nuevo par clave-valor usando newKey y newKeyValue
// 4. Imprimir el valor actualizado en keyToModify
// 5. Imprimir el valor en newKey
?>Todas las lecciones 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 Operators