Maison  >  Article  >  développement back-end  >  Quelle est la priorité des opérateurs php ?

Quelle est la priorité des opérateurs php ?

青灯夜游
青灯夜游original
2019-10-18 14:41:095918parcourir

Quelle est la priorité des opérateurs php ?

Priorité des opérateurs PHP

La priorité des opérateurs PHP décrit l'ordre dans lequel les opérations sont effectuées lorsque l'ordinateur calcule des expressions. Les opérations avec une priorité plus élevée sont exécutées en premier, suivies par les opérations avec une priorité plus faible. Par exemple, nous disons souvent que la multiplication et la division sont effectuées en premier, puis les additions et les soustractions.

Ordre de priorité des opérateurs PHP

Le tableau suivant répertorie la priorité des opérateurs de haut en bas. Les opérateurs sur la même ligne ont la même priorité et la priorité des opérateurs est évaluée de gauche à droite dans l'expression.

优先级 结合方向 运算符 附加信息
1 非结合 clone new clone和new
2 [ array()
3 非结合 ++ -- 递增/递减运算符
4 非结合 ~-(int)(float)(string)(array)(object)(bool)@ 类型
5 非结合 instanceof 类型
6 右结合 ! 逻辑操作符
7 */ % 算术运算符
8 + -. 算术运算符和字符串运算符
9 4e9674e4037f009f8f3f0cd5e931ebcf> 位运算符
10 非结合 16c98208e588b1496786c257f71a5310>=a8093152e673feb7aba1828c43532094 比较运算符
11 非结合 ==!====!== 比较运算符
12 & 位运算符和引用
13 ^ 位运算符
14 | 位运算符
15 && 逻辑运算符
16 || 逻辑运算符
17 ?: 三元运算符
18 =+=-=*=/= .= %= &= |= ^= 639513f5eb9d8dcbce09d6b5cb44cf73>= 赋值运算符
19 and 逻辑运算符
20 xor 逻辑运算符
21 or 逻辑运算符
22 , 多处用到

Exemple

Pour les opérateurs ayant la même préséance, la direction associative gauche signifie que l'évaluation se fera de gauche à droite, et la direction associative droite signifie la opposé. . Il est possible qu'un opérateur avec la même préséance sans direction associative ne puisse pas être combiné avec lui-même.

Par exemple, en PHP 1 d66d2a93259ca9392db29f00ed43fda0 1 est une instruction illégale, mais 1 <= 1 == 1 ne l'est pas. Parce que <= a une priorité plus élevée que ==.

&lt;?php
	$a = 3 * 3 % 5; // (3 * 3) % 5 = 4
	$a = true ? 0 : true ? 1 : 2; // (true ? 0 : true) ? 1 : 2 = 2
	$a = 1;
	$b = 2;
	$a = $b += 3; // $a = ($b += 3) -&gt; $a = 5, $b = 5
	// mixing ++ and + produces undefined behavior
	$a = 1;
	echo ++$a + $a++; // may print 4 or 5
?&gt;

Donc, en partant du principe que nous sommes très clairs sur la priorité des opérations PHP, il est préférable d'utiliser des parenthèses pour marquer la priorité lors de l'écriture des opérateurs. C'est plus lisible et c'est aussi une bonne habitude de programmation.

Pour plus de connaissances sur PHP, veuillez visiter le site Web chinois de php !

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!

Déclaration:
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