Capitulos de este wiki
  1. 1 Control de la ejecución
  2. 2 Funciones de usuario
  3. 3 Clases

Control Ejecucion y Funciones - Control de la ejecución

1 - Control de la ejecución

[editar]
Curso gratis creado por Carlos Castillo. Extraido de: http://www.tejedoresdelweb.com/307/article-1069.html
24 de Octubre de 2005
if ... elseif ... else

La intrucción if provee de ejecución condicional. Se puede acompañar de else y elseif.

if( $a > $b )

echo "a es mayor que b";

elseif( $a
$b )
echo "a es igual a b";

else

echo "a es menor que b";

if( $a >= $b ) {

echo "a es mayor o igual que b";

$mayor = $a;

} else {

echo "a es menor que b";

$mayor = $b; }

La sintaxis alternativa es útil para imprimir convenientemente fragmentos de HTML. En este caso se termina cada condición con un ':' (dos puntos) y la instrucción completa con endif;.

<H1>Listado de ventas</H1>

<% if( $orden
"fecha" ): %>
<P>Ordenadas por <B>fecha</B></P>

<% elseif ( $orden
"producto" ): %>
<P>Ordenadas según el <B>nombre</B> del producto</P>

<% endif; %>

while, do ... while

while permite crear ciclos sencillos, mientras una expresión sea cierta. La expresión puede ser evaluada al comienzo o al final:

$a = 10;

echo "Cuenta regresiva ...\n";

while($a > 0) {

echo $a-- ."\n"; # $a es impreso antes de disminuir su valor

} echo "Cero !!!"; # Cuando $a era cero, no fue impreso

$a = 10;

echo "Cuenta regresiva ...\n";

do {

echo $a-- . "\n";

} while( $a > 0 );

echo "Cero !!!"; # Cuando $a era cero, no fue impreso

La diferencia entre while y do ... while es que en este último caso la condición es evaluada al final del ciclo, es decir, el ciclo se ejecuta al menos una vez.

La sintaxis alternativa es terminar el ciclo con endwhile; (nótese que se escribe todo junto).

while(expresion): instruccion1; .. instruccionN; endwhile;

for

Un ciclo de este tipo tiene la misma sintaxis que en otros lenguajes: for(inicio;condicion;incremento).

for($a=1;$a<=10;$a++) {

echo "Tabla del $a\n";

for($b=1;$b<=10;$b++) {

echo "$a por $b es " . ($a * $b) . "\n";

};

echo "
\n";
}

La sintaxis alterna es: for(): instr1; instr2; ...; instrN; endfor;

foreach

Supongamos que debemos recorrer un arreglo, podemos hacerlo así:

for($i=0;$i<count($arreglo);$i++) {

echo $arreglo[$i] . "\n";

}

O utilizar foreach, que crea internamente el iterador sobre el arreglo:

foreach( $arreglo as $elemento ) { echo $elemento . "\n"; };

[Nota para programadores PERL] Es equivalente al foreach $item ( @arr ) de Perl.

Si las llaves del arreglo no son números, es decir, si el arreglo es asociativo, se utiliza una construcción ligeramente diferente.

$tblApellidos["juan"] = "perez";

$tblApellidos["pedro"] = "gonzalez";

foreach( $tblApellidos as $nombre => $apellido ) { echo "$apellido, $nombre\n"; };

[Nota para programadores PERL] Es más conveniente que la construcción de perl foreach $key ( %hash ). Para obtener un iterador idéntico al de perl se podria usar foreach( array_keys($arreglo) as $key ).

break, continue

break sale del ciclo más interno que se esté ejecutando en ese momento. Puede recibir un parámetro que diga cuantos niveles "romper".

for($i=1;$i<=10;$i++) { for($j=1;$j<=10;$j++) { if( $j > $i ) break 2; ... ... } };

Un uso interesante de break es poder ejecutar una secuencia de acciones y abortarla a la mitad, sin utilizar ningún tipo de salto, sino sólo programación estructurada (algo así como un bloque try .. catch de Java)

do {

open( ... ) or break;

read( ... ) or break;

$ok = 1;

} while(0); # Ejecutar una sola vez

if( not $ok ) {

}

continue sirve para saltarse el resto de una ejecución en un ciclo, sin salir de él:

foreach( $arreglo as $elemento ) { if( es_especial($elemento=) ) continue; ... ... };
[editar]

Sé el primero en opinar


Cursos gratis relacionados con 'Control Ejecucion y Funciones'

Las estructuras de control son las típicas: if, for, do, while, switch. La diferencia más... Más »
Este libro presenta el cúmulo de los elementos dispersos sobre la materia de Recursos Humanos,... Más »
Un sistema informático utiliza ordenadores para almacenar datos, procesarlos y ponerlos a disposición de quien... Más »
Muchas personas me han escrito preguntando ¿Y cómo hago para implementar el Sistema? Aquí muestro... Más »
Un exhaustivo conjunto de ensayos y artículos que recorren la década de 1990 y los... Más »

Autor y licencia de 'Control Ejecucion y Funciones'


Curso gratis de Carlos Castillo. Extraido de: http://www.tejedoresdelweb.com/307/article-1069.html CopyLeft
Los contenidos de este sitio pueden ser reproducidos solamente bajo estas condiciones. La licencia está respaldada con el registro de propiedad intelectual número 97.125 en Chile y otros países.
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.