Precauciones para usar el operador ternario de PHP

Al escribir un operador ternario antes, podría escribirse así

$a = true ? 0 : true ? 1 : 2;

Esta forma de escribir no es problema antes de PHP8.0.0, porque antes del enlace izquierdo, es decir, se calcula de izquierda a derecha. Pero no funcionará después, porque el enlace de la izquierda ha sido cancelado desde PHP8.0.0, lo cual es irrelevante, y reportará un error si se escribe directamente. Deben agregarse paréntesis por precedencia.

$a =  (true ? 0 : true) ? 1 : 2 = 2

epílogo

El uso de paréntesis, incluso cuando no es necesario, indica claramente el orden de las operaciones por el emparejamiento de paréntesis, no por la precedencia del operador y la asociatividad, ya que la precedencia del operador puede cambiar entre las versiones de PHP o depender de Agregar paréntesis al código al lado no puede solo evita este tipo de problema, sino que también aumenta la legibilidad del código.

Supongo que te gusta

Origin blog.csdn.net/a7442358/article/details/123816299
Recomendado
Clasificación