Estructuras de control switch en PHP
Bienvenido a una nueva lección de nuestro curso básico de PHP 8. Hoy vamos a meternos con la estructura de control switch, una herramienta súper práctica para comparar una variable y elegir qué hacer según su valor. Si ya manejas if-else, esto te va a parecer un atajo elegante. Todo va a ser claro, útil y con ejemplos que te van a encantar. ¡Empecemos!
¿Qué es la estructura switch?
La estructura switch es como un menú de opciones: tomas una variable, la comparas con varios valores posibles y ejecutas el bloque de código que corresponde al que encaja. Es una forma más ordenada y rápida de manejar múltiples casos, en lugar de escribir un montón de if y elseif. Imagina que es un guardia que dice: «¿Qué tienes? Ok, ve por este camino».
Aquí va la receta básica
switch ($variable) { case valor1: // Código si $variable es valor1 break; case valor2: // Código si $variable es valor2 break; default: // Código si no encaja con nada break; }
- case: Cada opción que comparas.
- break: Le dice a PHP «para aquí, no sigas revisando».
- default: El plan B si no hay coincidencias.
Probando la estructura switch
¡Manos a la obra! Crea un archivo switch.php en curso_php8 (dentro de C:\xampp\htdocs) y prueba esto:
Ejemplo 1: Números con switch
<?php $i = 3; switch ($i) { case 1: echo "i es igual a 1"; break; case 2: echo "i es igual a 2"; break; case 3: echo "i es igual a 3"; break; case 4: echo "i es igual a 4"; break; } ?>
Abre `http://localhost/curso_php8/switch.php`. Verás:
i es igual a 3
¿Qué pasó?
- $i es 3, así que switch busca el case 3 y ejecuta su código.
- break evita que siga revisando los demás casos.
- Si cambias $i a 5, no pasa nada porque no hay un case 5.
Ejemplo 2: Frutas con default
Añade esto al archivo:
<?php $fruta = "Manzana"; switch ($fruta) { case "Uva": echo "La fruta seleccionada es uva"; break; case "Manzana": echo "La fruta seleccionada es manzana"; break; case "Naranja": echo "La fruta seleccionada es naranja"; break; default: echo "No existe la fruta seleccionada"; break; } ?>
Resultado:
La fruta seleccionada es manzana
¿Cómo funciona?
- $fruta es «Manzana», así que va directo al case «Manzana».
- Si pones $fruta = «Piña», cae en default porque no hay un caso para «Piña».
Ejemplos prácticos:
Ejemplo 1: Día de la semana
<?php $dia = 2; switch ($dia) { case 1: echo "Lunes, ¡a empezar la semana!"; break; case 2: echo "Martes, ¡ya casi es mitad de semana!"; break; case 3: echo "Miércoles, ¡ánimo!"; break; default: echo "Ese día no lo tengo en mi radar."; break; } ?>
Resultado:
Martes, ¡ya casi es mitad de semana!
Ejemplo 2: Calificando con estilo
<?php $nota = 85; switch (true) { case $nota > 90: echo "¡Excelencia pura!"; break; case $nota > 80: echo "Muy bien, ¡qué crack!"; break; case $nota > 70: echo "Bien, ¡sigue así!"; break; default: echo "Regular o reprobado, ¡a practicar más!"; break; } ?>
Ejercicios para practicar
¡Tu turno de rockearlo! Ve a curso_php8 y prueba estos retos:
- Categoriza una nota
- Crea nota.php:
<?php $calificacion = 75; switch (true) { case $calificacion > 90: echo "Excedencia con $calificacion, ¡eres una estrella!"; break; case $calificacion > 80: echo "Muy bien con $calificacion, ¡genial!"; break; case $calificacion > 70: echo "Bien con $calificacion, ¡sigue así!"; break; case $calificacion > 51: echo "Regular con $calificacion, puedes mejorar."; break; default: echo "Reprobado con $calificacion, ¡a estudiar!"; break; } ?>
- Día de la semana
Crea dia.php:
<?php $numero = 4; switch ($numero) { case 1: echo "Lunes"; break; case 2: echo "Martes"; break; case 3: echo "Miércoles"; break; case 4: echo "Jueves"; break; case 5: echo "Viernes"; break; case 6: echo "Sábado"; break; case 7: echo "Domingo"; break; default: echo "Número inválido"; break; } ?>
Ejecuta en localhost/curso_php8/ y juega con los valores.
Consejos para no enredarte
- break es clave: Sin él, PHP sigue ejecutando los casos siguientes (¡cuidado con eso!).
- default al rescate: Úsalo siempre como red de seguridad para casos inesperados.
- Orden lógico: Si usas switch (true) con condiciones, ponlas de mayor a menor para que evalúe bien.
¡A por más control!
¡Gran trabajo, máquina! Ahora la estructura switch es tu aliada para tomar decisiones de forma limpia y ordenada. En la próxima lección, veremos funciones para organizar tu código como pro. Si algo no te queda claro, déjame un comentario o revisa el código en GitHub.
Lo que aprendiste hoy:
- Qué es switch: Una forma elegante de comparar una variable con muchas opciones.
- Cómo se usa: Con case para cada caso, break para parar y default por si acaso.
- Ejemplos vivos: Checaste números y frutas como todo un detective.
- Practicaste: Clasificaste notas y días como experto.
- Tip del pro: No olvides break o tu código se volverá loco.