Guía y comprobaciones
Dos ramas que producen un valor
El ternario completo evalúa una condición y elige una de dos expresiones. Es útil para asignaciones cortas con un resultado claro. Cuando una rama requiere varias instrucciones, un if separado permite explicar mejor la decisión.
$unidades = 3;
$etiqueta = $unidades === 1 ? 'unidad' : 'unidades';
echo $etiqueta, PHP_EOL; // unidades
Cero no es lo mismo que ausencia
El ternario abreviado $valor ?: $alternativa utiliza la alternativa cuando el valor se evalúa como falso. Eso incluye 0, '0', una cadena vacía y false. El operador ?? utiliza la alternativa si el operando no existe o es null; conserva un cero válido.
$stock = 0;
echo $stock ?: 10, PHP_EOL; // 10
echo $stock ?? 10, PHP_EOL; // 0
$entrada = ['intentos' => 0];
echo $entrada['intentos'] ?? 3, PHP_EOL; // 0
Para un formulario, define primero qué significa un campo vacío. Si aceptas un número entero, validar su formato y su rango es una tarea diferente de elegir el texto que mostrarás. Ni ?: ni ?? sustituyen esa validación.
Condiciones anidadas con paréntesis
En PHP 8 el ternario completo no es asociativo. No escribas cadenas sin paréntesis esperando que el lector o el intérprete adivinen qué pareja corresponde a cada condición. Para tres estados, un if o un match apropiado suele expresar mejor el problema. Clasificar una temperatura como negativa, cero o positiva es una decisión de tres resultados, no una invitación a comprimir toda la lógica.
Prueba los valores que cambian el sentido de la rama: null, cero, una unidad y dos unidades. Si la salida se inserta en HTML, escápala según ese contexto; que el ternario haya elegido una cadena no convierte la cadena en HTML seguro.
Preguntas frecuentes
¿El ternario abreviado conserva el cero?
No: cero se evalúa como falso y activa la alternativa. Usa una condición explícita o ?? si sólo quieres cubrir ausencia o null.
¿Puedo encadenar varios ternarios?
Usa paréntesis para una agrupación explícita; para varias decisiones suele resultar más claro escribir if o match.
Continúa con una guía relacionada
Documentación oficial
Fuentes consultadas
Fuentes y referencias
Consulta referencias útiles para ampliar o contrastar esta guía.
Siguiente lectura
Guias relacionadas para continuar
Si quieres seguir con el mismo tema, aqui tienes paginas cercanas que amplian la tecnica, comparan variantes o te llevan a la siguiente rutina.