Daniel Segovia

Blog personal

Archive for the ‘3.7 Estructuras de control’ Category

Ciclos foreach

Hacer un comentario

Foreach es un ciclo que trabaja de manera facil con los arrays, este solo trabaja con arrays y el mismo dará un error si se intenta iterar una variable

Sintaxis
foreach ($array as $valor)
o
foreach ($array as $indice => $valor)

Ejemplo:

<?php
$frutas = array('Manzana', 'Banana', 'Melon');
foreach ($frutas as $valor){
    echo $valor . "<br />";
}
?>

Aquí otro ejemplo para extraer los indices

<?php
$array = array('fruta'=>'Sandia', 'verdura'=>'Tomate', 'comida'=>'Asado');
foreach($array as $indice => $valor){
    echo $indice . " - " . $valor . "<br />";
}
?>

Un ejemplo un tanto más complica, este foreach itera un array que contiene arrays dentro

<?php
$personas = array(1 => array("nombre" => "Daniel", "edad" => 21), $array("nombre" => "Carlos", "edad" => 71));
foreach ($personas as &$persona) {
    if ($persona["edad"] >= 35) {
        $personas["grupo"] = "Adulto";
    } else {
        $personas["grupo"] = "Joven";
    }
}
 
print_r($personas);
?>
Array
(
    [1] => Array
        (
            [nombre] => Daniel
            [edad] => 21
            [grupo] => Joven
        )
    [2] => Array
        (
            [nombre] => Carlos
            [edad] => 71
            [grupo] => Adulto
        )
)

Written by Daniel Segovia

diciembre 10th, 2010 at 11:25 am

Ciclos for

Un comentario

Un ciclo for es usado cuando necesitamos ejecutar determinadas instrucciones y de antemano sabemos cuantas veces necesitaremos repetirlas.
Es decir, si yo quiero mostrar los números comprendidos entre 100 y 200 puedo usar un ciclo for
Aquí el ejemplo

<?php
for($i=100;$i<=200;$i++)
{
    echo $i;
}
?>

Como se puede apreciar en el ejemplo, el for esta formado por 3 partes, inicialización ($i = 100), condición ($i <= 200) y incremento ($i++)

Written by Daniel Segovia

octubre 19th, 2010 at 2:29 pm

Ciclos do while

Hacer un comentario

La estructura do while es muy parecida a la del while, la diferencia es que las instrucciones dentro de la estructura se ejecutarán al menos 1 vez ya que la condición estará al finalizar el bloque de comandos.

do{
Lista de comandos
}while(condicion)

Podemos tomar el mismo ejemplo del while, escojeremos números aleatorios entre 1 y 100 y cuando haya un impar se dará por finalizado el ciclo.

<?php
do
{
    $numero = rand(1,100); //rand nos dara un número aleatorio entre 1 y 100
    echo "Número elegido: " . $numero . "<br/>";
    $resto = $numero % 2;
}while($resto == 0);
?>

Written by Daniel Segovia

octubre 6th, 2010 at 11:42 am

Ciclos While

3 comentarios

En principio entender un ciclo While es sencillo, éste repetirá sus iteraciones (vueltas) mientras la condición se cumpla.
La sintaxis es:
while(condición)
{
Lista de comandos
}

En el siguiente ejemplo escojeremos números aleatorios entre 1 y 100, cuando haya un número impar el ciclo terminará.

<?php
$resto = 1;
while($resto == 0)
{
    $numero = rand(1,100); //rand nos dara un número aleatorio entre 1 y 100
    echo "Número elegido: " . $numero . "<br/>";
    $resto = $numero % 2;
}
?>

Written by Daniel Segovia

septiembre 29th, 2010 at 9:59 am

Estructuras cíclicas

Hacer un comentario

Las estructuras cíclicas son usadas para repetir determinadas tareas.
Las cantidad de repeticiones de un ciclo puede ser fija o variable, éstas estarán determinadas por el tipo de ciclo que usemos o por la lógica aplicada al ciclo.
Si bien por lógica podremos limitar cualquier ciclo, explicando cada uno de ellos en detalle nos dará la posibilidad de elegir el más adecaudo para el tipo de problematica a resolver.

Written by Daniel Segovia

septiembre 20th, 2010 at 2:53 pm

Switch

Hacer un comentario

Puedes usar switch para reemplazar largos if seguis de elseif. Puedes comparar un elemento con la larga lista de posibles resultados.

<?php
$letra = $_GET['letra'];
switch($letra){
    case "a":
        echo "La letra ingresada es una a";
        break;
    case "b":
        echo "La letra ingresada es una b";
        break;
    case "c":
        echo "La letra ingresada es una c";
        break;
    default :
        echo "La letra ingresada no es una a ni b ni c";
}
?>

En este caso compara la variable $letra con todos los case que se encuentran, en caso de no coincidir tomará la opción de default.
Con la palabra reservada break corto la comparación con los demás case.

También puede aplicarse más de un case para realizar determinada acción.
Ejemplo

<?php
$letra = $_GET['letra'];
switch($letra){
    case "a":
    case "A":
        echo "La letra ingresada es una a";
        break;
    default :
        echo "La letra ingresada no es una a mayúscula ni minúscula";
}
?>

Written by Daniel Segovia

agosto 30th, 2010 at 9:36 pm

elseif

Hacer un comentario

elseif se usa cuando queremos realizar una pregunta por el lado falso de una primera pregunta.
Por ejemplo podemos usar elseif si queremos saber si un número es positivo o negativo.
Para esta comprobación tenemos 3 posibles soluciones

- Número positivo
- Número negativo
- El número es 0

<?php
$numero = (int) $_GET['numero'];
if($numero > 0)
{
    echo "El número $numero es positivo";
}
elseif($numero < 0)
{
    echo "El número $numero es negativo";
}
else
{
    echo "El número es 0";
}
?>

$numero proviene de la url por lo que nuestro script debemos probarlo con este parametro en la url.
Si mi script se encuentra en el raíz de mi servidor web y el mismo se llama comprobar.php la llamada debería ser la siguiente

http://localhost/comprobar.php?numero=20

En este caso mi variable $numero dentro del código valdrá 20

Aquí los ejemplso corriendo
Positivo || Negativo || Cero

Código fuente

Written by Daniel Segovia

agosto 30th, 2010 at 5:47 pm

Else

Hacer un comentario

El else sería el camino del flujo al encontrar la respuesta a la pregunta falsa.
Por ejemplo si quiero saber si un número está dentro de determinado rango.
Necesito saber si un número es mayor a 100 y menor a 200

<?php
$numero = 15;
 
if($numero > 100 && $numero < 200)
{
    echo "El numero $numero esta dentro del rango";
}
else
{
    echo "El numero $numero no se encuentra en el rango";
}
 
?>

Written by Daniel Segovia

agosto 23rd, 2010 at 9:11 pm

Estructura condicional if

Un comentario

La estructura if se usa en caso que debamos hacer una pregunta.
Si la respuesta a la pregunta es afirmativa el flujo del programa correrá por ese lado y en caso de que no lo sea correrá por el lado falso.

IF

Como se ve en la imagen, en la condición se divide el flujo se divide en 2, por el lado del SI y por el lado del NO.
De acuerdo al resultado de la condición el flujo del programa tomará un camino u otro.

La palabra reservada en PHP para realizar las condiciones es if.

<?php
$numero = 8;
$resto = $numero % 2;
if($resto == 0)
{
    echo "El número $numero es par";
}
?>

Se pregunta en el código si el resto de $numero es igual a 0 se muestra un mensaje donde ese número es par.
Se pueden hacer la cantidad deseada de instrucciones dentro de ese if.
La llave de apertura ({) da inicio a todo lo que va a realizar el programa cuando la condición sea positiva y la llave de cierre (}) da por finalizada la cantidad de instrucciones para esa condición.
Las llaves no son obligatorias (pero si son recomendadas para entender el código), pero hay que tener en cuenta que si no se las usa, solo se ejecutará la primera instrucción seguida del if.
Aquí un ejemplo sin usar las llaves

<?php
$numero = 10;
$resto = $numero % 2;
if($resto == 0)
    echo "El número $numero es par";
 
echo 'Esto se mostrar sin importar la resolución de if';
 
?>

Written by Daniel Segovia

agosto 9th, 2010 at 5:46 pm

Estructuras condicionales

Hacer un comentario

Las estructuras condicionales son fundamentales en cualquier lenguaje de programación.
El flujo del programa toma determinados caminos según las resulociones de determinadas preguntas.
PHP soporta las estructuras condicionales if y switch

Written by Daniel Segovia

agosto 9th, 2010 at 12:07 pm

Estructuras de control

Hacer un comentario

Todo script PHP está construido en base a una serie de sentencias. Una sentencia puede ser una asignación, una llamada de función, un ciclo, una sentencia condicional o incluso una sentencia que no hace nada (una sentencia vacía). Las sentencias generalmente finalizan con un punto-y-coma. Adicionalmente, las sentencias pueden agruparse en un conjunto de sentencias, encapsulándolas entre corchetes. Un grupo de sentencias es una sentencia por sí misma también.

Written by Daniel Segovia

agosto 2nd, 2010 at 3:26 pm