En este tutorial, aprenderá cómo escribir el código de toma de decisiones usando sentencias if ... else ... elseif en PHP.

Sentencias condicionales de PHP

Al igual que la mayoría de los lenguajes de programación, PHP también le permite escribir código que realiza diferentes acciones en función de los resultados de las condiciones de prueba lógica o comparativa en tiempo de ejecución. Esto significa que puede crear condiciones de prueba en forma de expresiones que se evalúan como verdaderas o falsas y, en función de estos resultados, puede realizar ciertas acciones.

Hay varias declaraciones en PHP que puede usar para tomar decisiones:

  •     La declaración if
  •     La sentencia if ... else
  •     La declaración if ... elseif .... else
  •     El declaración switch...case 

Exploraremos cada una de estas declaraciones en las siguientes secciones.

La declaración if

La instrucción if se usa para ejecutar un bloque de código solo si la condición especificada se evalúa como verdadera. Esta es la declaración condicional más simple de PHP y se puede escribir como:

if (condición) {
    // Código a ser ejecutado
}

El siguiente ejemplo dará como resultado "¡Que tengas un buen fin de semana!" si el día actual es viernes:

Ejemplo

    <? php
    $d = fecha ("D");
    if ($d == "viernes") {
        echo "¡Que tengas un buen fin de semana!";
    }
    ?>

La declaración if ... else

Puede mejorar el proceso de toma de decisiones al proporcionar una alternativa al agregar una declaración else a la instrucción if. La instrucción if ... else le permite ejecutar un bloque de código si la condición especificada se evalúa como verdadera y otro bloque de código si se evalúa como falso. Se puede escribir así:

if (condición) {
    // Código que se ejecutará si la condición es verdadera
} else {
    // Código que se ejecutará si la condición es falsa
}

El siguiente ejemplo dará como resultado "¡Que tengas un buen fin de semana!" si el día actual es viernes, de lo contrario saldrá "¡Que tengas un buen día!"

Ejemplo

    <?php
    $d = fecha ("D");
    if ($d == "Viernes") {
        echo "¡Que tengas un buen fin de semana!";
    } else {
        echo "¡Que tengas un buen día!";
    }
    ?>

La declaración if ... elseif ... else

El if ... elseif ... else una declaración especial que se usa para combinar múltiples instrucciones if ... else.

if (condition1) {
    // Código que se ejecutará si condition1 es verdadero
} elseif (condition2) {
    // Código que se ejecutará si la condición1 es falsa y la condición2 es verdadera
} else {
    // Código que se ejecutará si tanto condition1 como condition2 son falsas
}

El siguiente ejemplo dará como resultado "¡Que tengas un buen fin de semana!" si el día actual es viernes y "¡Que tengas un buen domingo!" si el día actual es domingo, de lo contrario saldrá "¡Que tengas un buen día!"

Ejemplo

    <?php
    $d = fecha ("D");
    if ($d == "Viernes") {
    echo "¡Que tengas un buen fin de semana!";
    } elseif ($d == "domingo") {
        echo "¡Que tengas un buen domingo!";
    } else {
        echo "¡Que tengas un buen día!";
    }
    ?>

El operador ternario

El operador ternario proporciona una forma abreviada de escribir las declaraciones if ... else. El operador ternario está representado por el signo de interrogación (?) Y toma tres operandos: una condición para verificar, un resultado para ture y un resultado para falso.

Para entender cómo funciona este operador, considere los siguientes ejemplos:

Ejemplo

    <?php
    if ($age <18) {
        echo 'Niño'; // Mostrar Niñosi la edad es menor que 18
    } else {
        echo 'Adulto'; // Mostrar adulto si la edad es mayor o igual a 18
    }
    ?>

Usando el operador ternario, el mismo código podría escribirse de una manera más compacta:
Ejemplo
Ejecutar este código »

    <? php echo ($ age <18)? 'Niño': 'Adulto'; ?>

El operador ternario en el ejemplo anterior selecciona el valor a la izquierda de los dos puntos (es decir, "Niño") si la condición se evalúa como verdadera (es decir, si $ age es menor que 18) y selecciona el valor a la derecha de los dos puntos ( es decir, 'Adulto') si la condición se evalúa como falsa.


Consejo: El código escrito usando el operador ternario puede ser difícil de leer. Sin embargo, proporciona una excelente manera de escribir sentencias comparativas if-else.

El operador coalescente nulo PHP 7


PHP 7 introduce un nuevo operador coalescente nulo (??) que puede usar como una abreviatura donde necesita usar un operador ternario junto con la función isset ().

Para entender esto de una mejor manera, considere la siguiente línea de código. Obtiene el valor de $ _GET ['name'], si no existe o NULL, devuelve 'anonymous'.
Ejemplo

    <? php
    $ name = isset ($ _ GET ['name'])? $ _GET ['name']: 'anonymous';
    ?>

Usando el operador nulo coalescente el mismo código podría escribirse como:

    <? php
    $ name = $ _GET ['name'] ?? 'anónimo';
    ?>

Como puede ver, la sintaxis posterior es más compacta y fácil de escribir.

<ANTERIOR                                      SIGUIENTE>