Conceptos básicos III – Estructuras de control

Conceptos básicos III – Estructuras de control

Fecha: 13-Feb-2008 | Autor: .
Guardado en: Tutoriales PHP

Las estructuras de control nos permiten realizar comprobaciónes y ejecutar códigos dependiendo la ocasión o iterar (repetir) un proceso desde un par hasta miles de veces. A continuación explicaremos cada una en particular:

IF– ejecuta una acción si se cumple una condición dada, si se cumple la condición, ejecuta lo que está entre corchetes ({})

if ($a > $b){
$c = 5;
}

IF … ELSE– se da una condición y si la misma se cumple ejecuta un código X, en caso de que no se cumpla, ejecuta otro código Y (distinto), veamos su sintaxis:

if ($a > $b){
$c = 5;
}else{
$c = 10;
}

Si $a fuera mayor que $b, $c pasaría a valer 5, en cambio si se diera lo contrario $c valdría 10.

WHILE– repite un conjunto de sentencias indefinidamente mientras se cumplala condición.

$i = 1;
while ($i <= 9) {
echo $i++;  // el valor de $i impreso sería antes del incremento
}

Esto mostraría por pantalla 123456789, puesto que luego cuando $i valga 10 no entrará al while y simplemente terminará.

DO … WHILE– Los bucles do..whileson similares a los bucles while, salvo que la condición se comprueban al final de cada iteración, en vez de al principio.

$i = 11;
do {
echo $i++; // el valor de $i impreso sería antes del incremento
} while ($i <= 9)

¿Por qué este anuncio?

Si $i comenzara valiendo 11, en el caso anterior no nunca hubiera entrado al while, en cambio en este caso, al comprobarse al final, SI entrará al do, pero al llegar al while saldrá y no volverá a repetirlo (si repetiría si se cumpliera la condición).

FOR– La estructura fores el bucle más complejo. La sintaxis de esta estructura es la siguiente y paso a explicarla:

for (exp1; exp2; exp3) {
sentencias;
}
  • exp1 se ejecuta una única vez al comienzo del bucle.
  • exp2 se evalua al comienzo de cada iteración, de ser TRUE se continúa ejecutando, si fuera FALSE sale del bucle.
  • exp3 se ejecuta al final de cada iteración
  • las sentenciasson el código que se ejecuta en cada iteración

Pongamos algunos ejemplos (todos estos ejemplos muestran números del 1 al 10 por pantalla):

// ejemplo 1
for ($i = 1; $i <= 10; $i++) {
echo $i;
}
 
// ejemplo 2
for ($i = 1; ;$i++) {
if ($i > 10) {
break;
}
echo $i;
}
 
// ejemplo 3
$i = 1;
for (;;) {
if ($i > 10) {
break;
}
echo $i;
$i++;
}
 
// ejemplo 4
for ($i = 1; $i <= 10;  echo $i, $i++);

Si hay algun ejemplo que no entiendes, o tienes cualquier duda, dejala en los comentarios que intentaré evacuartela tan pronto como sea posible… …hasta la próxima phpnight ;)


Si te gustó, comparte:
Y si fue de ayuda, puedes comprarme un café:
...ó la cena si quieres! ;)

Etiquetado como: , , , , ,


Gravatar

Marcelo


Desarrollador web, trabajando desde Montevideo, Uruguay para todo el mundo. Me especializo en Diseño web, Maquetación HTML5 & CSS3, jQuery y Programación PHP & MySQL, e intento aprender un poco más cada día.

Deja tu opinión