---
title: "Estructuras de control en PHP V: instrucción switch"
description: "[Control de flujo o estructuras de control en PHP V] Instrucciones Switch Valencia, 27/09/2012, G.B. Tras haber conocido ya las estructuras condicionales en PHP con if, if/else y if/elseif/else,..."
url: https://indaga.net/estructuras-de-control-en-php-v-instruccion-switch/
date: 2012-09-27
modified: 2022-03-19
author: "Directorio Indaga"
image: https://indaga.net/wp-content/uploads/2012/09/php.jpg
categories: ["PHP"]
tags: ["aprendiendo php", "estructuras control php", "instrucciones switch php", "parender phph", "php"]
type: post
lang: es
---

# Estructuras de control en PHP V: instrucción switch

** Instrucciones Switch**

Valencia, 27/09/2012, G.B.
*Tras haber conocido ya las **estructuras condicionales en PHP** con if, if/else y if/elseif/else, pasamos ya a la última: la **estructura switch**. *Ya sabemos que las sentencias o estructuras condicionales se utilizan para realizar distintas acciones basadas en diferentes condiciones. Switch actúa de la misma manera que lo hace la estructura if/elseif/else, pero permite simplificar el código **cuando las condiciones o posibilidades son muchas**.

La expresión o variable que va después de la palabra reservada* switch* se evalúa utilizando la palabra ***case*** (caso en inglés) seguida de dos puntos. Si hay un equivalente, una coincidencia, se ejecutará la sentencia tras '*case*'. En caso contrario, se sale de la instrucción utilizando la palabra reservada*** break*** y se pasa al siguiente 'caso' o *case, *en donde se evaluará la siguiente sentencia,  y así hasta llegar a un case en el que se cumpla.  En el caso de que no se cumple ninguna de las equivalencias presentadas tras cada uno de los 'case', es decir, en el caso de que no haya ninguna equivalencia, se puede utilizar una **instrucción por defecto** representada por la palabra ***default,*** también*** *** seguida de dos puntos. La** estructura condicional* switch*** está 'encerrada' entre brackets **{ }**.

Pero mejor veamos una representación de la **sintaxis de switch**:

**switch ($nombreVariable) {**
** case valor1:**
**      (sentencia1);**
**       break; // salida que se utiliza opcionalmente**
**case valor2:**
**       (sentencia2);**
**       break;**
** case valor3:**
**       (sentencia3);**
**       break;**
** case valor4:**
**       (sentencia4);**
**       break;**
** case valor5:**
**       (sentencia5);**
**       break;**
** defaulf: **
**      (sentencia o instrucción predeterminada); // esta se ejecutará en caso de que ninguna de las equivalencias anteriores se cumpla**
** }**

Resumiéndolo:

**switch (variable) {**
**   case: sentencia1;**
**   break; **
**case: sentencia2;**
**   break; **
**default: sentencia predeterminada;**
**} **

Para entenderlo mejor, vamos a adaptar el ejemplo del post anterior a la estructura switch, aumentando con esa instrucción las posibilidades:

```

```

> [Ejecutar ejemplo](https://indaga.net/ejemplos-php/sentencias-switch.php)

Ya sólo nos queda  ver -respecto a las estructuras condicionales en PHP- otro tipo de operador condicional que equivale a la estructura if/else denominado ***operador ternario***. En el próximo post...

**
Lecturas recomendadas:
**[Switch
](http://php.net/manual/es/control-structures.switch.php)[PHP Instrucción Switch
](http://www.programacionfacil.com/php:switch)[PHP Switch Statement](http://www.w3schools.com/php/php_switch.asp)
