miércoles, 21 de julio de 2010

Estructuras de control en php

No pueden faltar en un lenguaje de programación las estructuras de control que permiten que el programador ejecute unas acciones en el programa cuando se dan (o no se dan) determinadas condiciones.

IF
If permite ejecutar un bloque de noticias si se da (o no se da) una determinada condición. Su sintaxis es:

if (condición)
statement

Por ejemplo, queremos que un script nos indique si dos variables son iguales:

$a = 2;
$b = 2;
if ($a == $b) {
eco "$a es igual a $b y valen $a.n";
}
If se puede utilizar también de forma diferente de la que acabamos de explicar. Aquí hay un ejemplo:

<? $a = 2; $b = 2; if ($a == $b) : ?>
$a es igual a $b.
<? endif; ?>

que hace lo mismo que la de arriba.

"if" se puede utilizar incluso entre llaves, utilizando "endif" cuando se quiera terminar el bloque "if"; por ejemplo:

if ($a == $b)
eco "$a es igual a $b y valen $a.n";
endif;

ELSE

Else sirve para "completar" if: con if, de hecho, hemos decidido que ocurra algo cuando se da una condición. Con else podemos programar qué ocurre cuanda esta condición no se da. Un ejemplo podría ser:

$a = 2;
$b = 3;
if ($a == $b) {
eco "$a es igual a $b y valen $a.n";
} else {
eco "$a es distinta de $b.n$a vale "$a" mientras $b vale "$b".n";
}

ELSEIF

Elseif permite especificar casos no definidos por "if". Un ejemplo podría ser: "Si $a es igual a $b visualiza $a, si $a es distinto de $b visualiza un mensaje de error; avisa si $a no existe, avisa si $b no existe". Sólo con if y else no se podría conseguir, sin embargo con elseif se convierte en una oparación muy simple:

if ($a == $b) {
echo "$a es igual a $b.n";
} elseif ($a != $b) {
echo "$a es distinto de $b.n";
} elseif (!$a) {
echo "$a no existe.n";
} elseif (!$b) {
echo "$b no existe.n";
}

Fijaos en dos aspectos: en un bloque pueden estar todos los elseif que necesitáis y, para los que conocen el Perl, cuidado con no escribir "elsif" en lugar de "elseif", porque el significado es el mismo pero "elsif" no es reconocido por el PHP así como elseif no es reconocido por el Perl.

WHILE

La condición "while" se comporta exactamente como en C; la sintaxis de base es:

while (expresión) declaración

Como "if", además, "while" se puede utilizar con o sin corchetes, añadiendo en el segundo caso la declaración "endwhile". Los dos ejemplos que ponemos a continuación son lo iguales:

/* Primer ejemplo: */
/* $a se incrementa y se visualiza */
/* hasta que su valor no supere "5" */
$a = 1;
while ($a <= 5) {
print $i++;
}

/* Segundo ejemplo */

$a = 1;
while ($a <= 5)
print $i++;
endwhile;

Traducidas, estas expresiones hacen posible que, hasta que (while) $a sea menor o igual a "5", $a se incrementa de una unidad y luego se visualiza.

FOR

También "for" se comporta exáctamente como en C o en Perl. Después del "for", se tienen que introducir tres expresiones que, mientras devuelvan "TRUE" permiten la ejecución de la declaración que está a continuación. Vamos a ver el ejemplo:

for ($a = 0 ; $a <=10 ; $a++) {
print $a;
}

Esto visualizará los números entre "0" y"10". En las tres expresiones entre paréntesis hemos definido que:


$a tiene valor "0";
$a es menor o igual a "10";
$a se incrementa de una unidad.

Por lo tanto, por cada valor de $a a partir de "0" hasta "10" $a se visualiza.

SWITCH

"Switch" permite sustituir una serie de "if" en la misma expresión y, por supuesto, actuar independientemente del valor de ésta:

switch ($i) {
case 0:
echo "$i vale 0";
break;
case 1:
echo "$i vale 1";
break;

}

Aquí hemos introducido "break" que permite salir de un bloque en el caso de que se realice una condición establecida.

1 comentarios:

Anónimo dijo...

Holaaa

Publicar un comentario

:))
w-)
:-j
:D
;)
:p
:_(
:)
:(
:X
=((
:-o
:-/
:-*
:|
:-T
:]
x(
o%
b-(
:-L
@X
=))
:-?
:-h
I-)

Atras Siguiente Inicio