Maison > Article > développement back-end > Pourquoi PHP fait-il écho à « 2 » lors de l'ajout et de la concaténation d'entiers ?
Le comportement intrigant de PHP : démêler le dilemme de la somme et de la concaténation
Dans le domaine de la programmation PHP, la discussion récente concernant le comportement déroutant lors de l'ajout " somme : 3". Cependant, étonnamment, le premier écho affiche « 2 », laissant les développeurs perplexes. Pourquoi cela se produit-il ?
La clé réside dans la priorité et l’associativité des opérateurs en PHP. Les opérateurs d’addition ( ) et de concaténation (.) partagent le même niveau de priorité, ce qui les rend associatifs. L'ordre dans lequel ces opérateurs sont évalués devient crucial :
<code class="php">$a = 1; $b = 2; echo "sum: " . $a + $b; echo "sum: " . ($a + $b);</code>
Dans le premier écho, la concaténation est effectuée en premier, ce qui donne "somme : 1".
Cette chaîne est ensuite convertie en un entier en raison du contexte numérique, convertissant efficacement l'addition en 0 2, donnant "2".
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!