Los arreglos asociativos son una herramienta esencial en PHP para mantener ordenada, accesible y claramente relacionada la información dentro de tus proyectos web. Al almacenar datos relacionados con claves específicas, facilitas su acceso, lectura y modificación de forma eficiente; esto optimiza tu código y evita errores potenciales.
¿Qué son los arreglos asociativos en PHP?
En PHP, un arreglo asociativo es una estructura que permite almacenar y acceder a información mediante claves o keys, que tú mismo defines. De esta forma, la información no se guarda en posiciones numéricas, sino bajo un nombre específico que describe claramente qué dato está guardando.
¿Por qué son útiles los arreglos asociativos?
Facilitan la organización clara y lógica de datos.
Permiten acceder a los datos por una clave descriptiva en lugar de por su posición.
Reducen errores al evitar que se manejen múltiples variables separadas.
¿Cómo implementar arreglos asociativos en tu código PHP?
Para comenzar a utilizar arreglos asociativos, define tus datos organizados mediante claves que correspondan a cada elemento específico:
$curso=['titulo'=>'Curso profesional del PHP','subtitulo'=>'Aprende PHP desde cero','descripcion'=>'Aquí va la descripción del curso','etiquetas'=>['PHP','web','programación']];
De esta forma, dentro de $curso, cada dato está claramente identificado y representado.
¿Cómo accedes e imprimes datos específicos del arreglo?
Para imprimir datos específicos, accede directamente a la clave del arreglo asociativo:
Esto genera una presentación clara y organizada, fácil de entender visualmente.
¿Cuál es el desafío para practicar estos conceptos?
Como reto práctico, continúa practicando la creación y manipulación de arreglo asociativos creando una nueva clave llamada lecciones. Debes mostrar estas lecciones en pantalla siguiendo la misma lógica aplicada anteriormente. Recuerda compartir tu solución para poder comentarla y revisarla juntos.
¿Te animas a compartir tu código? ¡Espero ver tu solución en los comentarios!
'description' => 'Lorem ipsum dolor sit amet consectetur adipisicing elit. Maiores quibusdam unde modi incidunt. Voluptatem tenetur aliquam, expedita vitae libero vel ullam sequi aspernatur, ad cum unde et voluptates consequuntur dolorem!',
<?php
//Definiendo variables$curso =["titulo"=>"Curso de fundamentos de PHP","subtitulo"=>"Introducción a PHP","descripcion"=>"Este curso es introductorio sobre el lenguaje de programación PHP, donde se veran los fundamentos de este","precio"=>199.99,"fecha_publicacion"=>"05-03-2025","estado"=>"Activo","nivel"=>"Básico","tags"=>["HTML","CSS","JAVASCRIPT","PHP","LARAVEL"],"clases"=>["Introducción a PHP","Sintaxis básica","Estructuras de control","Funciones","Programación Orientada a Objetos"]];?><!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title><?= $curso['titulo']?></title></head><body><h1>Bienvenido al <?= $curso['titulo']?></h1><h2><?= $curso['subtitulo']?></h2><h3>Cuesta: $<?= $curso['precio']?></h3><h3>Fue publicado:<?= $curso['fecha_publicacion']?></h3><h3>Descripción del curso</h3><p><?= $curso['descripcion']?></p><!--Forma3 de usar PHP dentro de HTML para estructuras condicionales--><h2>El curso está <?= $curso['estado']?>.</h2><h2>Nivel del curso:<?= $curso['nivel']?></h2><!--Ejercicio:Usar una estructura condicional para mostrar un mensaje diferente según el nivel del curso--><?php
if($curso['nivel']=="Básico"|| $curso['nivel']=="básico"){ echo "<p>Este curso es recomendado para quienes empienzan en programación.</p>";}elseif($curso['nivel']=="intermedio"|| $curso['nivel']=="Intermedio"){ echo "<p>Este curso es recomendado para quienes tienen conocimientos básicos de programación.</p>";}else{//Para el caso de que el curso sea avanzado o cualquier otro nivel que no sea básico o intermedio echo "<p>Este curso es ideal para estudiantes con conocimientos solidos en programación.</p>";}?><!--Mostrar las etiquetas del curso usando el arreglo con foreach -- forma 2--><strong>Etiquetas del curso:</strong><ul><?php foreach($curso['tags']as $tag):?><li><?= $tag ?></li><?php endforeach;?></ul><!--RetoClase4--><strong>Clases o contenido:</strong><ol><?php foreach($curso['clases']as $clase):?><li><?= $clase ?></li><?php endforeach;?></ol><?php
?></body></html>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit...</p>
<p>
<strong>Etiquetas:</strong>
<ul>
<?php foreach($tags as $tag): ?>
<li><?= $tag ?></li>
<?php endforeach; ?>
</ul>
</p>
<!-- Nueva seccion: Recursos relaciones -->
<h2>Recursos relacionados</h2>
<ul>
<?php foreach($recursosRelacionados as $recursos): ?>
<li><?= $recursos ?></li>
<?php endforeach; ?>
</ul>
</body>
</html>
Reto terminado.
Reto terminado.
lo seleccionado es lo que agregue a la practica 5.
<?php
$course =["title"=>"curso de Lenguaje de programación","subtitle"=>"Aprende desde cero","description"=>"Lorem ipsum dolor sit amet, consectetur adipisicing elit. Consequatur totam.","tags"=>["PHP","Laravel","JavaScript","HTML","CSS"],'author'=>"Sebastian",'email'=>"sebastian@ejemplo.com",'Lessons'=>["Introducción","Variables","Arreglos","Funciones","POO"]];?><!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title><?= $course['title']?></title></head><body><h1>Bienvenido al <?= $course['title']?></h1><h2><?= $course['subtitle']?></h2><P><?= $course['description']?></P><p><strong>Etiquetas</strong><ul><?php
//Recorrer el arreglo de etiquetasforeach($course['tags']as $tag):?><li><?= $tag ?></li><?php endforeach;?></ul></p><p><strong>Lecciones</strong></strong><ul><?php
//Recorrer el arreglo de etiquetasforeach($course['Lessons']as $lessons):?><li><?= $lessons ?></li><?php endforeach;?></ul></p></body></html>
<?php
$course =array("title"=>"Curso profesional de php","precio"=>"1500 USD","fecha_publicacion"=>"26/08/2025","description"=>"Estos cursos estan diseñados para personas como tu, especialmente si te apasiona el desarrollo y la innovación","tags"=>array("PHP","JS","Laravel",),"lecciones"=>array("Fundamentos de programación","Tipos de datos","Variables","Operadores","Casting","Debugg","Condicionales","Arreglos","Bucles","POO",),);?><!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title><?= $course["title"]?></title><body><h1><?= $course["title"]?></h1><p><?= $course["description"]?></p><p>El precio de cualquier curso es de:<?= $course["precio"]?></p><strong>Etiquetas</strong><ul><?php foreach($course["tags"]as $tag):?><li><?= $tag ?></li><?php endforeach;?></ul><strong>Lecciones de los cursos</strong><ul><?php foreach($course["lecciones"]as $leccion):?><li><?= $leccion ?></li><?php endforeach;?></ul></head><footer><?= $course["fecha_publicacion"]?></footer></body></html>
Y fue aquí donde me pregunte si puedo meter un arreglo asociativo dentro de otro arreglo asociativo, y la respuesta es que si :D :0
(experimente antes de ponerlo aquí :D)
<?php
$course = [
"title" => "Curso de PHP",
"description" => "Aprende PHP desde cero con este curso completo.",
"price" => "10 dolars",
"date" => "2023-07-13",
"status" => "disponible", // o "archivado", dependiendo del estado del curso
"level" => "avanzado" /* nivel del curso, puede ser "básico", "intermedio" o "avanzado" */,
"levelMessages" => [
"básico" => "Cualquiera puede tomar el curso",
"intermedio" => "Se necesitan habilidades básicas de programación",
"avanzado" => "Necesitas buen dominio del lenguaje"
],
"tags" => [
"PHP",
"Laravel",
"HTML",
"Xamp",
"MySQL",
],
"requeriments" => [
"Computadora",
"Conexión a Internet",
"Suscripcion a platzi.com",
"1 hora diaria de estudio",
"Disposición para aprender",
],
];
?><!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width, initial-scale=1.0"><title><?= $course['title'] ?></title></head><body><h2>Bienvenido al <?= $course['title'] ?></h2><h3><?= $course['description'] ?></h3><p> Fecha de inicio: <?= $course['date'] ?><br> El precio del curso es de: <?= $course['price'] ?><br> El estado del curso es: <b><?= $course['status'] ?></b>.<br> Nivel del curso: <?= $course['level'] ?></p><p> Requisitos: <?= $course['levelMessages'][$course['level']] ?? "Nivel no especificado" ?></p><div><h5>Etiquetas del curso:</h5><ul><?php foreach ($course['tags'] as $tag): ?><li><?= $tag ?></li><?php endforeach; ?></ul></div><div><h5>Cosas a necesitar:</h5><ul><?php foreach ($course['requeriments'] as $requeriment): ?><li><?= $requeriment ?></li><?php endforeach; ?></ul></div></body></html>