Maison > développement back-end > tutoriel php > Pourquoi l'opérateur ternaire et la concaténation de chaînes produisent-ils un comportement anormal ?

Pourquoi l'opérateur ternaire et la concaténation de chaînes produisent-ils un comportement anormal ?

Linda Hamilton
Libérer: 2024-10-24 03:40:30
original
351 Les gens l'ont consulté

Why Does the Ternary Operator and String Concatenation Produce Anomalous Behavior?

Comportement anormal de l'opérateur ternaire et de la concaténation de chaînes

Énigme

Considérez l'extrait de code suivant :

<code class="php">$description = 'Paper: ' . ($paperType == 'bond') ? 'Bond' : 'Other';</code>
Copier après la connexion

On pourrait anticiper que ce code attribuerait la chaîne « Papier : Bond » à $description si $paperType est « bond » et « Papier : Autre » sinon. Cependant, le comportement observé est différent.

Discerner la déviation

Lors de l'exécution, $description reçoit soit « Bond » soit « Other », en omettant la préface « Paper : ». Ce résultat inattendu provient du placement erroné des parenthèses.

Rectification de l'anomalie

Pour corriger le code, des parenthèses doivent être ajoutées pour garantir que la chaîne est concaténée dans le bon ordre :

<code class="php">$description = 'Paper: ' . ($paperType == 'bond' ? 'Bond' : 'Other');</code>
Copier après la connexion

En mettant l'expression ternaire entre parenthèses, nous nous assurons que l'opération de concaténation est effectuée en premier, en attachant 'Papier :' au résultat concaténé de 'Bond' ou 'Autre'.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal