Repaso - Almacén de datos clave-valor
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 contiene un objeto JSON que representa la información de un contacto (por ejemplo, {"name": "Alice", "phone": "555-1234"}).
Después, 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 arreglo asociativo a partir de la entrada JSON, después realiza las siguientes operaciones:
- Comprueba 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
// Lee la entrada JSON y conviértela a un array asociativo
$jsonInput = trim(fgets(STDIN));
$contact = (array)json_decode($jsonInput, true);
// Lee 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 debajo
// 1. Comprueba si keyToCheck existe e imprime el texto exacto de las instrucciones o el texto exacto de las instrucciones
// 2. Modifica el valor en keyToModify a newValue
// 3. Añade un nuevo par clave-valor usando newKey y newKeyValue
// 4. Imprime el valor actualizado en keyToModify
// 5. Imprime el valor en newKey
?>Todas las lecciones de Fundamentos
4Operadores de comparación y lógicos
Operadores de comparaciónIgualdad e identidadOperadores lógicos, parte 1Operadores lógicos, parte 2Repaso: lógica simple7Arrays Parte 2 - Asociativos
Introducción a los arrays asociativosAcceder a valores por claveModificar valores por claveAñadir nuevos pares clave-valorComprobar si existe una claveRepaso - Almacén de datos clave-valor2Variables y tipos de datos
NúmerosCadenas y comillasBooleanosConvenciones de nombresRepaso: inicialización de variablesVariables vacíasConcatenación de cadenasObtener datos del usuarioConvertir a otros tipos5Lógica condicional
Sentencia ifIf - ElseEl operador ternarioOperador de coalescencia nulaSentencia switchRepaso - Tomar decisiones3Operadores básicos
Operadores aritméticosOperador móduloOperador de exponenciaciónAsignación combinadaIncremento/DecrementoPrecedencia de operadoresRepaso: cálculos simplesOperadores de cadenasPractica por tu cuenta: Compilador de PHP online