Qué es el operador ternario?

El operador ternario es un operador condicional que disminuye la longitud del código mientras realiza comparaciones y condicionales. Este método es una alternativa para usar sentencias if-else y anidadas if-else. El orden de ejecución para este operador es de izquierda a derecha.

Ejemplo:

php
<?php $edad = 20; echo ($edad >= 20) ? 'Pasa' : 'Fuera';
  • condition: La expresión a ser evaluada que retorna un valor booleano
  • statement 1: Es la sentencia que se ejecuta cuando el valor es true.
  • statement 2: Es la sentencia que se ejecuta cuando el valor es falso.

La versión corta del operador ternario

Elvis Operator

La sintaxis del operador ternario corto se puede utilizar omitiendo la parte central del operador ternario para una evaluación rápida y abreviada. También se conoce como el "Operador Elvis"

Ejemplo:

php
<?php $val = $_GET['user'] ?: 'default';

El operador Elvis se puede utilizar para reducir la redundancia de sus condiciones y acortar la duración de sus tareas. Es el operador ternario con el segundo operador omitido. Devolverá el primer operador si es verdadero; de lo contrario, evalúa y devuelve su segundo operador.

Si usamos el operador Elvis de esta forma, causará un error si $_GET['user'] no está configurado, en lugar de escribir un código largo como este: $val = isset($_GET['user']) ? $_GET['user'] : 'default';

Operador nula

Reemplaza la operación ternaria junto con la función isset() que se usa para verificar si una variable dada es NULL o no y devuelve su primer operando si existe y no es NULL, de lo contrario, devuelve el segundo operando.

Ejemplo:

php
$user= $_GET['user'] ?? 'nobody';