Skip to main content

Programación PHP: Estructuras de Control

PHP-logo

Las estructuras de control, permiten ejecutar o no, una o más veces un determinado bloque de acciones  a continuación explicamos cada una de estas estructuras

if-else

La estructura if nos permite ejecutar un bloque de acciones si se cumple una determinada condición, de lo contrario nos permite ejecutar otro bloque de acciones identificado por la sentencia else, el siguiente ejemplo se lee como:


“Si la variable $var1 es igual a 12 entonces imprime en pantalla el texto ‘La variable vale 12’ si no entonces imprime en pantalla ‘La variable tiene otro valor’ ”

<?
if($var1 == 12)
{
echo ‘La variable vale 12’;
}
else
{
echo ‘La variable tiene otro valor’;
}
?>

Hay otra sentencia que usamos a menudo para unir más de un condicional if, es la sentencia elseif, ésta nos permite dar otra condición por si no se ha cumplido la primera, después de elseif podemos volver a usar else con normalidad:

<?
if($var1 == 12)
{
echo ‘La variable vale 12’;
}
elseif($var1 == 3)
{
echo ‘La variable vale 3’;
}
else
{
echo ‘La variable tiene otro valor’;
}
?>

En este caso, si var1 es distinto de 12, evaluará si vale 3, si es así mostrará el segundo mensaje, si no el tercero.

While

Esta sentencia de control es un bucle que nos permite efectuar un bloque de sentencias anidadas mientras se cumpla una determinada condición, cuando deje de cumplirse, se continuará ejecutando el resto del código PHP.

La sentencia se lee como: “Mientras $var1 sea menor de 10, entonces imprime en pantalla el valor de la variable $var1 e imcrementa en uno su valor”

<?
$var1 = 0;
while($var1 < 10)
{
echo “Valor = ” . $var1 . “<br>”;
$var1++; // Incrementamos la variable
}
?>

Hay que tener cuidado con este tipo de bucle, en el interior del bloque de acciones siempre se debe modificar algun parametro de la condicion para que esta acabe cumpliendose, de lo contrario crearemos un bucle infinito, en este ejemplo incrementamos el valor de $var1.

do while

El bucle do while es una sentencia igual al bucle while con la diferencia que ejecuta las acciones antes de comprobar la condicion, consiguiendo que se ejecuten por lo menos una vez la o las sentencias, que se especifiquen.

En este ejemplo se mostrará por lo menos una vez el texto “valoe = 11”

<?
$var1 = 11;
do
{
echo “valor = $var1<br>”;
$var1 ++;
} while ($var1 <= 10);
?>

For

El bucle for (Español: Para) nos permite ejecutar un bloque de acciones o sentencias, un número determinado de veces, esta estructura funciona con tres parámetros que van separados por punto y coma (;).

La estructura de este bucle es: for (inicialización; condición; actualización) sentencia;

Donde:
Inicialización: Es una expresión que se ejecuta una sola vez al inicio, es el valor inicial para el bucle, mas comúnmente asignado a una variable ejemplo: $i = 1;
Condición: Es una expresión que se evalúa como falsa o verdadera, si es falsa el bucle finaliza, en caso contrario el bucle ejecuta la sentencia ejemplo: $i <= 5;
Actualización: Es una expresión que modifica la expresión de inicialización comúnmente en incremento o decremento Ejemplo: $i++, en este caso incremento.

<?
for ($var1 = 0; $var1 < 10; $var1++){
echo “\$var1 = $var1”;
}
?>

Antes de empezar el bucle se ejecutará $var1 = 0, entonces se ejecutará el interior del bucle y $var1++ hasta que se cumpla $var1 < 10.

Foreach

El bucle foreach normalmente se utiliza para recorrer ó iterar sobre un vector(array), su sintaxis es sencilla, solo hay que indicar el identificador de la matriz, la palabre AS y la variable que identificará el valor del elemento:

<?
$vector = array(“uno”, “dos”, “tres”);
foreach ($vector as $valor)
{
echo “Valor: $valor<br>”;
}
?>

Esta expresión tambien nos permite trabajar con vectores con indice, en este caso trabajaremos así:

<?
$vector = array(
“uno” => 1,
“dos” => 2,
“tres” => 3,
“diecisiete” => 17
);
foreach($vector as $indice => $valor) {
print “\$vector[$indice] => $valor.\n”;
}
?>

Como vemos en este caso especificamos la variable que identifica el indice y la que identifica el valor separadas por “=>”.

Swhitch

Esta sentencia de control nos permite realizar un bloque de acciones para cada valor de una variable dada, es decir si tienen una variable que puede tener diferentes valores entonces utilizamos la sentencia switch

<?
switch ($i) {
case 0:
echo “Variable en valor bajo”;
break;
case 1:
echo “Variable en valor alto”;
break;
default:
echo “La variable no es binária”;
}
?>

En este ejemplo se ejecuta un switch para la variable $i, en el caso de que esta sea 0, imprimirá el mensaje ‘Variable en valor bajo’, si es 1 imprimirá ‘Variable en valor alto’ y sino, nos dirá que la variable no es un número decimal.

Es importante mencionar la sentencia break, lo que hece es detener el recorrido por las condiciones del switch de lo contrario, se seguirían ejecutando las instrucciones de los demás casos.

Finalmente encontramos un caso especial llamado default, este caso se activará solo si la variable no pertenece a ninguno de los casos del switch.

¡Dejános un comentario!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *