“Aplicaciones Web dinámicas
                                 con PHP y MySql”



                      Operadores
                           y
                 Estructuras de Control


Sergio Gabriel Rodríguez
http://www.3trex.com.ar




Operadores
• Un operador es algo a lo que se entrega uno o más valores y produce otro
valor.

Existen tres tipos de operadores:

• operador unario: el cual opera sobre un único valor.
• operadores binarios: este grupo contiene la mayoría de operadores que
soporta PHP , trabaja sobre dos expresiones
• operador ternario ?:, usado para seleccionar entre dos expresiones, en
base a una tercera.

        • Operadores de Aritmética
        • Operadores de Asignación
        • Operadores de Comparación
        • Operadores de Incremento/Decremento
        • Operadores de Lógica
        • Operadores de Cadena
Operadores
Operadores de Aritmética
 ¿Recuerdan la aritmética básica del colegio? Éstos operadores funcionan tal como
 aquéllos.




Operadores
Operadores de Asignación
El operador básico de asignación es "=“, quiere decir que el operando de la izquierda
recibe el valor de la expresión a la derecha (es decir, "se define a").

 $a = 5;            $a = ($b + 4) + 5;
 $b = $a;           $nombre = “Juan Perez”;
La asignación copia la variable original en la nueva (asignación por valor), de modo que
cualquier cambio a una no afecta a la otra. A partir de PHP4, es soportada la asignación
por referencia, usando la sintaxis $var = &$otra_var. 'Asignación por referencia' quiere
decir que ambas variables terminan apuntando a los mismos datos y que nada es realmente
copiado

 $a = 5; $b = $a;                 $a = 5; $b = &$a;
 $a = 6; // $b vale 5             $a = 6; // $b vale 6
Operadores
Operadores de Comparación
Los operadores de comparación, como su nombre indica, le permiten comparar dos
valores.




Operadores
Operadores de Incrementos/Decremento
Los operadores de comparación, como su nombre indica, le permiten comparar dos
valores.
Operadores
Operadores de Lógica
Los operadores de lógica, determinan el valor booleano de una expresión.




Operadores
Operadores de Cadena (Strings)
Existen dos operadores para datos tipo string. El primero es el operador de concatenación
('.'), el cual devuelve el resultado de concatenar sus argumentas a lado derecho e izquierdo.

El segundo es el operador de asignación sobre concatenación ('.='), el cual adiciona el
argumento del lado derecho al argumento en el lado izquierdo. .
Estructuras de Control
Control de Flujo de programas
Todo lenguaje de programación dispone de órdenes de control de flujo,
que permite al programa tomar decisiones lógicas segun reciba unos
parámetros u otros.
Las posibilidades que ofrece php son:


                         • if/else
                         • if/elseif/else
                         • switch
                         • do/while
                         • while
                         • for




Estructuras de Control
Condicionales if /else if
Los condicionales, o bifurcaciones, son estructuras que permiten llevar a
cabo determinadas acciones, de acuerdo a la validez de una sentencia. Al
igual que en la mayor parte de los lenguajes, en PHP se utilizan el if...else
y el switch.
    <?php

             if ($_POST[‘edad’] >= 18){
                     echo “Podés ir en auto";
             }else{
                     echo “Tomate el cole";
             }
    ?>
Estructuras de Control
Condicionales if /else if
Para resumir podemos definir la instrucción if...else como:

    <?php
            if (sentencia) {
                      acciones que se ejecutan si la sentencia es verdadera
            } else {
                      acciones que se ejecutan si la sentencia es falsa
            }
    ?>




Estructuras de Control
Condicionales if /else if
Veremos como se puede ampliar el if para que soporte más de dos
caminos:
            <?php
                     $a = 5;
                     $b = 2;
                     if ($a = = $b){
                                echo "5 es igual a 2";
                     } else if ($a < $b) {
                                echo "5 es menor que 2";
                     } else if ($a > $b) {
                                echo "5 es mayor que 2";
                     } else {
                                echo "5 no es igual a 2";
                     }
            ?>
Estructuras de Control
Condicionales if /else if
Mediante el uso de operadores podemos introducir condiciones
complejas, agrupándolas con parentesis:

       <?php

         if ( ($edad >= 18) && ($carnet_conducir = = 1)) {
                 ejecutamos las acciones
         }

       ?>




Estructuras de Control
Condicionales switch
switch es una alternativa quizás mas legible cuando necesitamos
evaluar una variable frente a multiples valores posibles:
 <?php
  $op = "a";
  switch ($op) {
     case "a":
        // código que se ejecuta si $op vale "a"
        break;
     case "b":
        // código que se ejecuta si $op vale "b"
        break;
     default:
        // código a ejecutar por defecto si no se cumple ninguna condición
   }
 ?>
Estructuras de Control
 Bucles while
A diferencia de los controles condicionales simples vistos hasta ahora,
los bucles toman otro tipo de decisiones: si se da la condición,
¿cuantas veces he de ejecutar esta parte de código ?

                 <?php
                         $i=1;
                         while ($i <=10) {
                           echo "$i<br>";
                           $i++;
                         }
                 ?>




Estructuras de Control
Bucles do .. while
La única diferencia que existe con el anterior es que aquí la condición
se evalúa después de ejecutar el código, por lo que el bucle será
efectivo al menos una vez:

               <?php

                    $i=11;
                    do
                    {
                       echo "$i<br>";
                       $i++;
                    }while ($i <=10);

               ?>
Estructuras de Control
Bucles for
Similar en su funcionalidad a while, el bucle for toma tres parámetros,
separados los dos primeros por punto y coma: valor inicial de la
variable de control, valor final y incremento de la misma.

                  <?php

                       for ($i=1; $i<=10; $i++) {
                            echo "$i<br>";
                       }

                  ?>




Arrays

  • Sintaxis:
         array ([clave =>] valor, ...).

  • La clave es una cadena o un entero no negativo. El valor puede
    ser de cualquier tipo válido en PHP, incluyendo otro array

  •   Ejemplos:
         $color = array (‘rojo’=>101, ‘verde’=>51, ‘azul’=>255);
         $medidas = array (10, 25, 15);

  •   Acceso:
         echo $color[‘rojo’] // imprime 101
         echo $medidas[0] // imprime 10

  • El primer elemento es el 0
Arrays
• La estructura de control foreach permite iterar sobre arrays
•   Sintaxis:
       foreach ($array as $valor)
           sentencia

          foreach ($array as $clave => $valor)
            sentencia

•   Ejemplos:
       foreach ($color as $valor)
         print “Valor: $valor<BR>n”;

          foreach ($color as $clave => $valor)
            print “Clave: $clave; Valor: $valor<BR>n”;




Arrays
Ejemplos:

          $color = array (‘rojo’=>101, ‘verde’=>51, ‘azul’=>255);

          foreach ($color as $valor)
             print “Valor: $valor<BR>n”;
Salida:

          Valor: 101
          Valor: 51
          Valor: 255
Arrays

Ejemplos:
     $color = array (‘rojo’=>101, ‘verde’=>51, ‘azul’=>255);
     foreach ($color as $clave => $valor)
       print “Clave: $clave; Valor: $valor<BR>n”;



Salida:
     Clave: rojo; Valor: 101
     Clave: verde; Valor: 51
     Clave: azul; Valor: 255

Curso php-my sql-clase-3

  • 1.
    “Aplicaciones Web dinámicas con PHP y MySql” Operadores y Estructuras de Control Sergio Gabriel Rodríguez http://www.3trex.com.ar Operadores • Un operador es algo a lo que se entrega uno o más valores y produce otro valor. Existen tres tipos de operadores: • operador unario: el cual opera sobre un único valor. • operadores binarios: este grupo contiene la mayoría de operadores que soporta PHP , trabaja sobre dos expresiones • operador ternario ?:, usado para seleccionar entre dos expresiones, en base a una tercera. • Operadores de Aritmética • Operadores de Asignación • Operadores de Comparación • Operadores de Incremento/Decremento • Operadores de Lógica • Operadores de Cadena
  • 2.
    Operadores Operadores de Aritmética ¿Recuerdan la aritmética básica del colegio? Éstos operadores funcionan tal como aquéllos. Operadores Operadores de Asignación El operador básico de asignación es "=“, quiere decir que el operando de la izquierda recibe el valor de la expresión a la derecha (es decir, "se define a"). $a = 5; $a = ($b + 4) + 5; $b = $a; $nombre = “Juan Perez”; La asignación copia la variable original en la nueva (asignación por valor), de modo que cualquier cambio a una no afecta a la otra. A partir de PHP4, es soportada la asignación por referencia, usando la sintaxis $var = &$otra_var. 'Asignación por referencia' quiere decir que ambas variables terminan apuntando a los mismos datos y que nada es realmente copiado $a = 5; $b = $a; $a = 5; $b = &$a; $a = 6; // $b vale 5 $a = 6; // $b vale 6
  • 3.
    Operadores Operadores de Comparación Losoperadores de comparación, como su nombre indica, le permiten comparar dos valores. Operadores Operadores de Incrementos/Decremento Los operadores de comparación, como su nombre indica, le permiten comparar dos valores.
  • 4.
    Operadores Operadores de Lógica Losoperadores de lógica, determinan el valor booleano de una expresión. Operadores Operadores de Cadena (Strings) Existen dos operadores para datos tipo string. El primero es el operador de concatenación ('.'), el cual devuelve el resultado de concatenar sus argumentas a lado derecho e izquierdo. El segundo es el operador de asignación sobre concatenación ('.='), el cual adiciona el argumento del lado derecho al argumento en el lado izquierdo. .
  • 5.
    Estructuras de Control Controlde Flujo de programas Todo lenguaje de programación dispone de órdenes de control de flujo, que permite al programa tomar decisiones lógicas segun reciba unos parámetros u otros. Las posibilidades que ofrece php son: • if/else • if/elseif/else • switch • do/while • while • for Estructuras de Control Condicionales if /else if Los condicionales, o bifurcaciones, son estructuras que permiten llevar a cabo determinadas acciones, de acuerdo a la validez de una sentencia. Al igual que en la mayor parte de los lenguajes, en PHP se utilizan el if...else y el switch. <?php if ($_POST[‘edad’] >= 18){ echo “Podés ir en auto"; }else{ echo “Tomate el cole"; } ?>
  • 6.
    Estructuras de Control Condicionalesif /else if Para resumir podemos definir la instrucción if...else como: <?php if (sentencia) { acciones que se ejecutan si la sentencia es verdadera } else { acciones que se ejecutan si la sentencia es falsa } ?> Estructuras de Control Condicionales if /else if Veremos como se puede ampliar el if para que soporte más de dos caminos: <?php $a = 5; $b = 2; if ($a = = $b){ echo "5 es igual a 2"; } else if ($a < $b) { echo "5 es menor que 2"; } else if ($a > $b) { echo "5 es mayor que 2"; } else { echo "5 no es igual a 2"; } ?>
  • 7.
    Estructuras de Control Condicionalesif /else if Mediante el uso de operadores podemos introducir condiciones complejas, agrupándolas con parentesis: <?php if ( ($edad >= 18) && ($carnet_conducir = = 1)) { ejecutamos las acciones } ?> Estructuras de Control Condicionales switch switch es una alternativa quizás mas legible cuando necesitamos evaluar una variable frente a multiples valores posibles: <?php $op = "a"; switch ($op) { case "a": // código que se ejecuta si $op vale "a" break; case "b": // código que se ejecuta si $op vale "b" break; default: // código a ejecutar por defecto si no se cumple ninguna condición } ?>
  • 8.
    Estructuras de Control Bucles while A diferencia de los controles condicionales simples vistos hasta ahora, los bucles toman otro tipo de decisiones: si se da la condición, ¿cuantas veces he de ejecutar esta parte de código ? <?php $i=1; while ($i <=10) { echo "$i<br>"; $i++; } ?> Estructuras de Control Bucles do .. while La única diferencia que existe con el anterior es que aquí la condición se evalúa después de ejecutar el código, por lo que el bucle será efectivo al menos una vez: <?php $i=11; do { echo "$i<br>"; $i++; }while ($i <=10); ?>
  • 9.
    Estructuras de Control Buclesfor Similar en su funcionalidad a while, el bucle for toma tres parámetros, separados los dos primeros por punto y coma: valor inicial de la variable de control, valor final y incremento de la misma. <?php for ($i=1; $i<=10; $i++) { echo "$i<br>"; } ?> Arrays • Sintaxis: array ([clave =>] valor, ...). • La clave es una cadena o un entero no negativo. El valor puede ser de cualquier tipo válido en PHP, incluyendo otro array • Ejemplos: $color = array (‘rojo’=>101, ‘verde’=>51, ‘azul’=>255); $medidas = array (10, 25, 15); • Acceso: echo $color[‘rojo’] // imprime 101 echo $medidas[0] // imprime 10 • El primer elemento es el 0
  • 10.
    Arrays • La estructurade control foreach permite iterar sobre arrays • Sintaxis: foreach ($array as $valor) sentencia foreach ($array as $clave => $valor) sentencia • Ejemplos: foreach ($color as $valor) print “Valor: $valor<BR>n”; foreach ($color as $clave => $valor) print “Clave: $clave; Valor: $valor<BR>n”; Arrays Ejemplos: $color = array (‘rojo’=>101, ‘verde’=>51, ‘azul’=>255); foreach ($color as $valor) print “Valor: $valor<BR>n”; Salida: Valor: 101 Valor: 51 Valor: 255
  • 11.
    Arrays Ejemplos: $color = array (‘rojo’=>101, ‘verde’=>51, ‘azul’=>255); foreach ($color as $clave => $valor) print “Clave: $clave; Valor: $valor<BR>n”; Salida: Clave: rojo; Valor: 101 Clave: verde; Valor: 51 Clave: azul; Valor: 255