Manual de PHP: Condicionales

De Foros del Web

Contenido

Uso de condicionales en la programación

Los condicionales son de gran ayuda en nuestro trabajo, pues nos permiten realizar una u otra acción en base al resultado verdadero/falso de la condición que establecemos. Como ejemplo, si la variable $edad en el script es mayor a 18 entonces que muestre un mensaje que indique “Ingrese su número de licencia de conducir”, pero si es menor o igual a 18 que no lo haga.


Tipos de condicionales

if

Es la sintaxis básica y la más sencilla dentro de todos los condicionales en PHP. Lo utilizamos para que ejecute determinado código SI Y SÓLO SI la condición es verdadera.

<?php
$estado_civil = 'Casado';
 
if ($estado_civil == 'Soltero') {
    echo '¿Está buscando novia?';
}

En este caso pudimos haber preguntado su estado civil con anterioridad, el cuál tenemos guardado en la variable $estado_civil, para entonces poder evaluar luego su valor. Como se observa en el ejemplo, el bloque de código a ejecutar si la condición es verdadera debe ir encerrado entre {llaves}, y sólo si el código que queremos ejecutar consta de una sola línea podemos omitir las llaves; sin embargo, es recomendable nunca omitirlas para conservar la legibilidad del código. Nótese además que en el ejemplo hemos usado el operador == para comparar con un valor.

if … else

Es una ampliación de la sintaxis IF. Nos permite ejecutar un bloque de código si la condición es verdadera, y otro bloque diferente si es falsa.

<?php
$estado_civil= 'Soltero';
if ($estado_civil == 'Casado') {
  echo '¡Felicitaciones!';
} else {
  echo '¿Está buscando novia?';
}

En este ejemplo podemos notar que las líneas en donde se encuentra el if y el else no terminan con un (;), pues no representan una instrucción PHP propiamente dicha, sino un nodo que deriva el flujo de ejecución de código a un lado u otro dependiendo del resultado de la evaluación de la condición.

if … elseif … else

Es una versión un poco más avanzada del anterior en donde podemos tener dos o más condiciones que se ejecutan secuencialmente hasta que una es evaluada como VERDADERA, en cuyo caso se ejecuta el bloque correspondiente de código y finaliza la evaluación de las condiciones restantes. Si se incluye un bloque else al final, éste será ejecutado si ninguna de las condiciones anteriores es verdadera.

<?php
$estado_civil = 'Soltero';
 
if ($estado_civil == 'Casado') {
  echo '¡Felicitaciones!';
} elseif ($estado_civil == 'Viudo') {
  echo 'Sentimos mucho su pérdida…';
} elseif ($estado_civil == 'Conviviente') {
  echo 'Esperamos su pronto matrimonio…';
} else {
  echo '¿Está buscando novia?';
}


Veamos otro ejemplo utilizando valores en las variables:

<html>
<body>
 
<?php
$numero = 115;
if ($numero == 115) {
  echo '¡Felicitaciones usted ha ganado la lotería!';
} elseif ($numero >= 116) {
  echo 'Su ticket de lotería participa la otra semana';
} else {
  echo 'Lo sentimos, pero su número no ha salido ganador';
}
?>
</body>
</html>

En este caso además del código del programa hemos incluido las etiquetas HTML lo cual se puede hacer con cualquiera de los ejemplos que hemos dado, y vemos cómo podemos desplegar un mensaje según en qué rango se encuentre un número que hemos definido anteriormente o que bien puede ser un valor resultado de una operación.


switch

Es otro tipo de condicional muy similar al IF … ELSEIF … ELSE. Su ventaja radica en que permite confrontar un valor patrón con una serie de valores. Cuando uno de los valores es igual (==) al valor patrón, se ejecuta el bloque de código correspondiente. Note que la sintaxis es algo diferente a la de los condicionales estándares IF, pero hace que el código se vea mucho más legible y ordenado.

<html>
<body>
 
<?php
   $sistema_operativo = 'Mac OS X';
 
   switch($sistema_operativo) {
      case 'Windows':   // Podemos incluir comentarios 
         echo "Su sistema lo inventó <strong>Bill Gates</strong><br />";
         echo "  y sirve mucho para jugar solitario.";
         break; //este comando sirve para finalizar el condicional 
      case 'Linux':  
         echo 'Su sistema fue creado a partir del código de Linus Torvalds.';
         break;
      default: //cualquier otro valor no especificado en los case  
         echo "Hay un mito con las computadoras creadas por Apple<br />";
         echo "que dice que solo sirven para diseñar, pero no es cierto.";
   }
?>
 
</body>
</html>

La palabra clave default desempeña el mismo rol que el ELSE, es decir, el bloque de código bajo esta palabra se ejecuta cuando la confrontación del valor patrón con los otros valores dio en todos FALSO. Además, es muy importante saber que cada bloque de código DEBE finalizar con la palabra clave break, como en el ejemplo. De ser omitida, la ejecución del código continua ignorando las condiciones siguientes, hasta que encuentra un break o termina el bloque switch.


Este artículo es parte del Manual de PHP.





Herramientas personales