viernes, 22 de agosto de 2008

Estructuras de control en Php



Gracias a las estructuras de control, podemos realizar comprobaciones y ejecutar códigos especiales para hacer de nuestros scripts algo verdaderamente útil. Dentro de las estructuras de control encontramos las funciones de condición y los bucles. Estas son las que trataremos.

Condicionales
Los condicionales, o bifurcaciones, son estructuras que permiten llevar a cabo determinadas acciones, de acuerdo a la validez de una sentencia. Al igual que en la mayor parte de los lenguajes, en PHP se utilizan el if...else y el switch.

$a = 5;
$b = 2;

if($a == $b){
echo "Por estos dias 5 es igual a 2";
}
else{
echo "Como era de esperarse 5 no es igual a 2";
}
?>

La instrucción if verifica la validez de la sentencia, en este caso, $a == $b, como mencionamos anteriormente, el operador == devuelve verdadero si $a es igual a $b, entonces, si es ese caso, escribimos en pantalla la cadena Por estos dias 5 es igual a 2.
De lo contrario (else), es decir, si $a no es igual a $b, devolvemos la cadena Como era de esperarse 5 no es igual a 2.

Para resumir podemos definir la instrucción if...else como:

if(sentencia){
acciones que se ejecutan si la sentencia es verdadera
}
else{
acciones que se ejecutan si la sentencia es falsa
}
?>

El switch es una estructura que no se utiliza frecuentemente, por lo que veremos cómo se puede ampliar el if...else de forma que soporte más de dos caminos.

$a = 5;
$b = 2;

if($a == $b){
echo "5 es igual a 2";
}
else if($a < $b){
echo "5 es menor que 2";
}
else if($a > $b){
echo "5 es mayor que 2";
}
else{
echo "5 no es igual a 2";
}

?>

Con lo anterior hemos expandido el if...else a tal punto que ahora no sólo valida que $a sea igual que $b, sino también si es mayor o menor. Todo esto con else if, pero al final, con el else normal, podemos devolver algo, en caso de que ninguna de todas las condiciones se cumplan.

Bucles
Lo último que trataremos sobre las estructuras de control son los bucles. Un bucle es una instrucción que ejecuta repetidamente una acción, hasta que se cumple determinada condición. Existen dos tipos de bucles en PHP, los bucles for y los while

El bucle while es menos complejo que el for, pero aún así permite ejecutar funciones interesantes.

$a = 5;
while($a < 7){
echo "a vale $a en este momento.\n
";
$a++;
}
?>

El bucle while, en este caso, se ejecuta mientras $a (que inicia con un valor de 5), sea menor que 7 y mientras se ejecuta se imprime una línea que muestra un texto y anuncia el valor actual de dicha variable.... pero por qué es un bucle? Porque al final, y haciendo uso del operador de sumatoria ++, hacemos que a aumente en 1. De este modo, en cada ejecución del bucle a va a valer 1 más, hasta llegar al momento en que su valor sea 7, ahí deja de ejecutarse el bucle.

Para ver cómo se ejecutaría la misma acción, utilizando el for, veamos un ejemplo.

for($a=5; $a < 7; $a++){
echo "a vale $a en este momento.\n
";
}
?>

Eso es todo. La única diferencia es que en la misma sentencia del for se declara la variable y su valor, luego la condición y finalmente la modificación que se realiza a la variable, en este caso se aumenta en 1.

No hay comentarios: