#3 Estructuras de control, qué son y tipos

Tercera clase del curso PHP. Conoce las estructuras de control a través de los conceptos flujo de control, sentencias con ejemplos.

bucles en php Programacion web

En la tercera entrega del curso php voy a abordar las estructuras de control, responderé a las preguntas ¿Qué son? ¿Cómo se usan? ¿Qué tipos existen?. Como siempre voy a añadir conceptos de teoría y ejemplos explicados paso a paso para su correcta comprensión.

¿Qué es una estructura de control en programación?

Entender qué es una estructura de control pasa por entender el flujo de control de la programación, es decir, cómo se ejecuta nuestro código, en qué orden y prioridad. Además debes de entender el concepto de instrucción o sentencia.

Flujo de control en php

El flujo de control es el orden de ejecución de las líneas de código. El orden es siempre el mismo, secuencial, es decir, igual que leemos las personas lee el intérprete de código (en el caso de php nuestro servidor Apache). Tan solo se puede modificar este orden secuencial establecido utilizando estructuras de control, concepto que explicaré en los siguientes apartados. 

Imagínate leyendo el típico libro del manual de cualquier dispositivo o de tipo tutorial, como es costumbre en la lectura leerás de izquierda a derecha y de arriba abajo. Así lee el intérprete del código (el software que ejecuta el código). Este orden de lectura sería el flujo de control.

Estructuras de control de php

Continuamos con el ejemplo anterior, supón ahora que aparecen varias imágenes con el texto de Figura 1, Figura 2, etc. a lo largo del texto. Seguirás leyendo de arriba abajo y de izquierda a derecha hasta que encuentras una nota del autor que dice: ver Figura 1, ver Figura 2. Buscarás en el contenido la imagen que te indican y habrás dejado de leer el orden establecido de tu flujo de control. Esta modificación en la lectura que te han hecho hacer, en programación, lo realizan las estructuras de control.

En php (y en la programación en general) el equivalente a "ver la figura 1" para el intérprete de código es una sentencia especial, llamada estructura de control, y que normalmente engloba una porción del script (varias líneas) entre llaves. Un ejemplo:

<?php
$var1 = 6;
if ( $var1 < 5 ) {
    echo 'El número ' . $var1 . ' es menor que 5';
}
echo ' Fin script ';
?>

El flujo de control establece que se debería de ejecuta secuencialmente, es decir sentencia a sentencia (línea a línea) el código del ejemplo. Primero asignando el valor 6 a la variable $var1, después leyendo la sentencia if y posteriormente mostrando el texto "El número 6 es menor que 5". Sin embargo, la sentencia if, que es una estructura de control, indica al intérprete que solo se ejecutará el echo (que se encuentra entre llaves) si el valor de la variable $var1 es menor que 5. Como en el ejemplo 6 (el valor de $var1) es mayor que 5, tan solo se mostraría por pantalla el mensaje "Fin script".

Fíjate que la estructura de control no termina en el carácter ; sino en una llave que abre.

El bloque de sentencias de las estructuras de control

Como he mencionado antes, entender las estructuras de control en programación pasa por entender qué es un bloque de sentencias:

  • Un bloque de sentencias (o sentencia compuesta) es un número de sentencias PHP simples (como un echo) rodeadas por llaves.
  • Los bloques de sentencias  definen en muchas ocasiones (lo veremos en próximas clases) el ámbito de variables.
  • Los bloques se pueden anidar sin límite, es decir, unos bloques pueden contener a otros, controlándose entre sí. En el ejemplo php anterior podría programar dentro del if otro if, y así sucesivamente.

Tipos de estructuras de control php

 Los tipos de estructuras de control son tres:

  • Estructuras condicionales: permiten ejecutar uno o varios bloques de sentencias si se cumple una o varias condiciones.
  • Estructuras iterativas o bucles: también conocidas como bucles, estas estructuras permiten repetir un número finito de veces un bloque de sentencias.
  • Funciones o procedimientos: estas estructuras de control permiten nombrar un bloque de sentencias con un nombre de nuestra elección, pudiendo así llamar por este nombre la ejecución de este código entre llaves.

Extra: resumen conceptos estructuras de control

  • Una sentencia o instrucción es un comando básico de la programación que se delimita por normal general con punto y coma.
  • El flujo de control es el orden de ejecución de las sentencias en programación.
  • Una estructura de control es una sentencia especial que permite modificar el flujo de control de la programación.
  • Un bloque de sentencias siempre se define entre llaves, una que abre y otra que cierra. Así, la ejecución de estas sentencias en bloque dependerá siempre de la estructura de control "propietaria" de las llaves.
  • Los bloques de sentencias se pueden anidar (programar unas dentro de otras) sin límite.
  • Los condicionales, bucles o funciones son estructuras de control.
  • Algunas estructuras de control como los if, permiten ser utilizadas sin las llaves, en estos casos actúan sobre la sentencia inmediatamente posterior.

Sobre el autor

Javier Gómez Redactor en Srcodigofuente.es

Javier Gómez

Ingeniero técnico en informática de gestión. Desarrollador web freelance y profesor de desarrollo web a partes iguales. Testarudo autodidacta, creativo, perfeccionista y alma libre.

Cargando comentarios

Utilizamos "cookies" para información estadística. Si continúas navegando aceptas su uso.