Inicio > PHP > 6.3- Switch Case Default PHP

6.3- Switch Case Default PHP

6.3- Switch-Case-Default

Esta sentencia de control sería algo así como una sentencia alternativa a If-Elseif-Else. Switch equivale a If, cada Case equivale a un Elseif, y Default equivale a Else. Con la función break se le dice al Switch que si la condición es verdadera, no siga evaluando las condiciones restantes. Su código es:

Código:
php
  switch (condicion)
  {
    case algo: //Código para si es verdadero
    break; //Se sale del switch, para que no siga evaluando las condiciones
    default:    //Código para si falso
 }
?>

Un buen ejemplo para Switch sería hacer una página modular (pag.php?sección=algo):

Código:
php
  $sección = $_GET ["sección"];
  switch ($sección)
  {
    case php:
      include ("php.php");
      break;
    case asp:
      include ("asp.php");
      break;
    case js:
      include ("js.php");
      break;
    default:
      echo "Porfavor, selecciona una sección";
  }
?>

Explicado: Si tenemos pag.php?sección=php, nos incluye php.php. Si tenemos pag.php?sección=asp, nos incluye asp.php. Si tenemos pag.php?sección=js, nos incluye js.php. Y si no está puesta la variable $sección, pues dice que se ponga una sección.

6.4- While

Aquí ya entramos en los bucles. Pero… ¿Qué es un bucle? Un bucle es una secuencia de comandos que se repite, dada una condición. While en español significa “mientras”, justamente porque hace cosas mientras una condición se cumpla. El While también usa los operadores de comparación. Su código es:

Código:
<?php
  while (condicion)
  {
    //Códigos que se repiten mientras la condición sea verdadera
  }
?>

En la mayoría de los casos, para controlar el while usaremos los operadores de incremento y decremento, los cuales son:

Código:
<?php
  $i = 1;
  $i++; //Es equivalente a $i = $i + 1. Devolvería 2
  $i--; //Es equivalente a $i = $i - 1. Devolvería 0 (si la sentencia de arriba no hubiera sido ejecutada)
?>

En el siguiente ejemplo, se escriben los números del 0 al 4:

Código:
<?php
  $i = 0;
  while ($i <= 4)
  {
    echo $i;
    $i++;
  }
?>

Y en esta sentencia también se puede usar el break, para lo mismo que el Switch. Un ejemplo sería:

Código:
<?php
  $i = 1;
  while ($i <= 10)
  {
    echo $i;
    if ($i == 6)
    {
      echo "Aquí se termina el bucle";
      break;
    }
    $i++;
  }
?>

Ese código llegaría hasta 5 y luego daría el mensaje “Aquí se termina el bucle”.

6.5- For

For sería una forma mas simple de hacer un While. También se usan operadores de incremento y decremento. Su código es:

Código:
<?php
  for ($i = 0; condicion; $i++/$i--)
  {
    //Código que se ejecuta mientras condición sea verdadera
  }
?>

Y el For también puede ser parado con la función break. Eso sí, el For puede ser claramente reemplazado por el While.

7- Funciones

Se verá que son las funciones

7.1- ¿Qué son las funciones?

Las funciones son un bloque de código que se ejecuta llamando a un nombre. Las funciones recursivas (se verán que son este y otro tipo de funciones un poquitín mas adelante) son muy útiles, pues se puede usar el dinamísmo. Su código:

Código:
<?php
  function nombre ([arg_1, [arg_2 [, ... [, arg_n]]]])
  {
    //Códigos a ejecutar
  }
?>

Pero… Ten cuidado con los nombres de las funciones, porque si declaras una función dos veces, o declaras una función con nombre de una ya existente, te dará el siguiente error:

Citar
Fatal error: Cannot redeclare XXX() in XXXXX on line XX

Hay dos tipos de funciones: las tradicionales y las recursivas. Las tradicionales son aquellas que no reciben parámetros (algo así como void en C). Mientras que las recursivas son aquellas que reciben parámentros y devuelven un valor asociado con esos parámetros. Aquí pongo un ejemplo para cada uno:

Función tradicional.

Código:
<?php
  function sumar ()
  {
    echo 2 + 2;
  }
  sumar(); //Eso llama a la función sumar... Imprimiría 4
?>

Función recursiva.

Código:
<?php
  function sumar ($a,$b)
  {
    return $a + $b;
  }
  echo sumar (1,3); //Eso llama a la función sumar. Imprimiría 4
?>

Si se fijan, la primera función (la tradicional) imprime un valor sin la necesidad de ponerle un echo ala función. Esto es porque se ha puesto un echo dentro de la función. En cambio, a la otra función (la recursiva) se ha necesitado poner un echo a la función debido a que la función en si devuelve un valor, no lo imprime. ¿Se nota la diferencia? Eso sí, igualmente se podría poner un echo dentro de una función recursiva, pero la mejor forma sería con el return. Para ver como se devuelve un valor, veremos la función return.

Categorías:PHP
  1. Aún no hay comentarios.
  1. No trackbacks yet.

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: