Adding New Key-Value Pairs
Parte de la sección Fundamentos del Journey de PHP de Coddy — lección 44 de 71.
Has aprendido a modificar valores existentes en un array asociativo. Pero ¿qué sucede cuando asignas un valor a una clave que no existe aún? PHP lo crea automáticamente por ti.
<?php
$person = [
"name" => "Alice",
"age" => 25
];
$person["city"] = "Paris";
$person["job"] = "Developer";
echo $person["city"]; // Paris
echo $person["job"]; // Developer
?>La sintaxis es la misma que al modificar—$array["key"] = value—pero cuando la clave no existe, PHP agrega un nuevo par clave-valor al array en lugar de actualizar uno existente.
Esto es especialmente útil cuando se construye un array asociativo gradualmente:
<?php
$settings = [];
$settings["theme"] = "dark";
$settings["language"] = "en";
$settings["notifications"] = true;
echo $settings["theme"]; // dark
?>Comenzar con un array vacío y agregar pares según sea necesario es un patrón común cuando se recopilan datos a lo largo del tiempo o cuando no se conocen todas las claves de antemano.
Desafío
FácilComienza con un array asociativo vacío llamado $profile.
Lee las siguientes entradas:
- Una cadena
key1- la primera clave a agregar - Una cadena
value1- el valor parakey1 - Una cadena
key2- la segunda clave a agregar - Una cadena
value2- el valor parakey2 - Una cadena
key3- la tercera clave a agregar - Una cadena
value3- el valor parakey3
Agrega cada par clave-valor al array $profile, luego imprime:
- El valor asociado con
key1 - El valor asociado con
key2 - El valor asociado con
key3
Imprime cada resultado en una línea separada.
Ejemplo:
Si las entradas son username, alice123, email, alice@example.com, status, y active, la salida debería ser:
alice123
alice@example.com
activeSi las entradas son brand, Nike, size, 42, color, y black, la salida debería ser:
Nike
42
blackHoja de referencia
Para agregar un nuevo par clave-valor a un array asociativo, usa la misma sintaxis que para modificar: $array["key"] = value. Si la clave no existe, PHP la crea automáticamente:
<?php
$person = [
"name" => "Alice",
"age" => 25
];
$person["city"] = "Paris";
$person["job"] = "Developer";
?>Puedes comenzar con un array vacío y construirlo gradualmente:
<?php
$settings = [];
$settings["theme"] = "dark";
$settings["language"] = "en";
$settings["notifications"] = true;
?>Pruébalo tú mismo
<?php
// Leer entradas
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));
$key3 = trim(fgets(STDIN));
$value3 = trim(fgets(STDIN));
// Comenzar con un array asociativo vacío
$profile = [];
// TODO: Escribe tu código a continuación
// Agregar cada par clave-valor al array $profile
// Imprimir los valores asociados con cada clave
echo $profile[$key1] . "\n";
echo $profile[$key2] . "\n";
echo $profile[$key3] . "\n";
?>Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
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