Advertisement
  1. Code
  2. PHP

Uso de la instrucción switch de PHP

by
Read Time:6 minsLanguages:

Spanish (Español) translation by Ana Paulina Figueroa Vazquez (you can also view the original English article)

En este artículo, discutiremos los conceptos básicos de la instrucción switch en PHP. Junto con la sintaxis de la instrucción switch, también analizaremos un par de ejemplos reales para demostrar de qué manera puedes usarla.

¿Cuál es el uso de la instrucción switch?

En PHP, la instrucción switch se considera una alternativa a las instrucciones if-elseif-else. La mayoría de las veces quieres comparar diferentes valores con una variable y ejecutar una pieza de código en base a eso. Lo primero que te viene a la mente es implementar una serie de instrucciones if-elseif-else para lograrlo, como se muestra en el siguiente fragmento de código.

Si solamente es cuestión de dos o tres condiciones, es adecuado hacer la implementación con las instrucciones if-elseif-else. Pero si necesitas trabajar con varias condiciones, y si haces la implementación con las instrucciones if-elseif-else, el código se vuelve realmente largo y es difícil de gestionar. En esos casos lo ideal es usar la instrucción switch, y eso es exactamente para lo que está diseñada.

Antes de continuar y discutir la instrucción switch a detalle, veamos rápidamente cómo se ve el ejemplo anterior con dicha instrucción.

¿No se ve mucho más compacto y ordenado? Por lo tanto, la instrucción switch es realmente útil cuando se trata de trabajar con múltiples condiciones en tu código.

Sintaxis y ejemplos

En esta sección, analizaremos la sintaxis de la instrucción switch y un par de ejemplos reales para demostrar cómo puedes usarla en tu desarrollo cotidiano con PHP.

Sintaxis

Analicemos la sintaxis de la instrucción switch.

El proceso comienza con la expresión en la instrucción switch. En primer lugar se evalúa la expresión, y la salida de esta última se compara con todos los casos en secuencia hasta que haya una coincidencia. Si hay una coincidencia, se ejecuta el código asociado con ese caso en particular. Si no hay coincidencia, y si hay un caso default disponible, la instrucción ejecutará ese código.

Es importante que no olvides la instrucción break en cada caso. Si un caso coincide, y este no tiene una instrucción break, el código de todos los siguientes casos será ejecutado aún cuando no coincidan los valores de cada caso.

Revisemos el siguiente ejemplo para comprender la importancia de la instrucción break.

Si piensas que solamente mostraría Your favorite site is code.tutsplus.com! (¡Tu sitio favorito es code.tutsplus.com!), ¡estás equivocado! Lo que mostraría sería lo siguiente:

Esto se debe a que no has incluido la instrucción break en el segundo caso y, por lo tanto, PHP ejecutaría el código de todos los siguientes casos, independientemente del valor de la variable $favorite_site. Así que nunca debes olvidar la instrucción break al usar la instrucción switch en tu código.

Finalmente, el caso default es opcional; no es obligatorio proporcionarlo. Su propósito es brindar el código predeterminado que se ejecuta si el valor de la expresión no coincide con ningún caso.

Así que esa es la sintaxis de la instrucción switch. En la siguiente sección veremos un par de ejemplos reales.

Ejemplos

Ahora estás familiarizado con la sintaxis de la instrucción switch y, en la sección anterior, ya has analizado un par de ejemplos básicos. En esta sección analizaremos un par de ejemplos avanzados de la instrucción switch.

Múltiples casos para el mismo bloque de código

Revisemos el siguiente ejemplo.

En algunas ocasiones quieres ejecutar la misma pieza de código para diferentes casos. El ejemplo anterior lo demuestra. En él, si el valor de la variable $favorite_site es 'Design' o 'Code' o 'Business', la instrucción ejecutaría el mismo código para todos estos tres casos. De lo contrario, ejecutaría el código asociado con el caso predeterminado.

Expresión en las instrucciones switch

En los ejemplos que hemos discutido hasta ahora, hemos usado una variable en la instrucción switch. De hecho, la instrucción switch te permite usar una expresión también.

Veamos cómo puedes usar una expresión en la instrucción switch, como se muestra en el siguiente ejemplo.

Primero, PHP evalúa la expresión en la instrucción switch, y la salida de esa expresión se compara con todos los casos. En este ejemplo, la instrucción muestra el día actual de la semana.

Instrucciones switch anidadas

Finalmente, también puedes anidar las instrucciones switch. Veamos de qué manera funciona esto con el siguiente ejemplo.

Como puedes ver, es perfectamente válido usar una instrucción switch dentro de otra instrucción switch. Sin embargo, lo conveniente es que intentes evitar esto, ya que ocasiona que tu código sea más difícil de leer y gestionar.

Conclusión

Hoy discutimos cómo puedes usar la instrucción switch en PHP. Es una característica realmente útil del lenguaje, que te permite simplificar instrucciones if-elseif-else extensas y mantiene la claridad y la legibilidad de tu código.

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.