|
while (condición) { instruccion1; instruccion2; ... } |
|
<? $size=1; While ($size<=6) { echo"<font size=$size>Tamaño $size</font><br>\n"; $size++; } ?> |
El bucle while se suele utiliza cuando no se sabe exactamente cuantas iteraciones se deben realizar antes de acabar. Vamos a utilizarlo en otro ejemplo, en el que hay que recorrer una cadena hasta encontrar un carácter dado. Si lo encuentra, escribir su posición. Si no, escribir que no se ha encontrado.
|
Nota: Para hacer este ejercicio necesitamos conocer la función de cadena strlen(), que obtiene la longitud de la cadena que se le pase por parámetro.
int strlen (string cad)
|
<?
$cadena = "hola a todo el mundo";
//recorro la cadena hasta encontrar una "m"
$i=0;
while ($cadena[$i]!="m" && $i< strlen($cadena)){
$i++;
}
if ($i==strlen($cadena))
echo "No se encuentra...";
else
echo "Está en la posición $i";
?>
En este ejemplo se define una cadena con el valor "hola a todo el mundo". Posteriormente se recorre esa cadena hasta el final de la cadena o hasta encontrar el caracter "m", utilizando una variable $i que lleva la cuenta de los caracteres recorridos.
Al final del bucle while, si se salió porque se encontró el caracter "m", la variable $i valdrá un número menor que la longitud de la cadema. Si se salió por llegar al final de la cadena, la variable $i valdrá lo mismo que la longitud en caracteres de esa cadena. En el condicional simplemente se comprueba si $i vale o no lo mismo que la longitud de la cadena, mostrando los mensajes adecuados en cada caso.
Podemos ver el ejemplo en funcionamiento.
Bucle do/while
Este tipo de bucle no difiere en exceso del anterior. La sintaxis es la siguiente:
|
do { instruccion1; instruccion2; ... } while (condición) |
| Por: Dani D | 15/3/05
|
| Por: BRIO | 30/6/05
|
| Por: Yordanis | 06/12/05
|
| Por: Moran jr | 20/12/05
|
| Por: geek | 14/3/06
|
| Por: Sebastian | 30/3/06
|