¿Operario ternario y capricho de concatenación de cuerdas?

Hola, solo quiero saber por qué este código produce (al menos para mí) un resultado incorrecto.

Bueno, probablemente estoy en falta aquí

$description = 'Paper: ' . ($paperType == 'bond') ? 'Bond' : 'Other'; 

Estaba adivinando que si paperType es igual a ‘Bond’, la descripción es ‘Paper: Bond’ y si paperType no es igual a ‘Bond’, la descripción es ‘Paper: Other’.

Pero cuando ejecuto este código, los resultados son descripción, ya sea ‘Bond’ o ‘Other’ y me pregunto dónde fue la cadena ‘Paper:’?

Solutions Collecting From Web of "¿Operario ternario y capricho de concatenación de cuerdas?"

 $description = 'Paper: ' . ($paperType == 'bond' ? 'Bond' : 'Other'); 

Intente agregar paréntesis para que la cadena se concatene a una cadena en el orden correcto.

Está relacionado con la precedencia del operador. Tienes que hacer lo siguiente:

 $description = 'Paper: ' . (($paperType == 'bond') ? 'Bond' : 'Other');