Heim >Backend-Entwicklung >PHP-Problem >Welchen Vorrang haben PHP-Operatoren?

Welchen Vorrang haben PHP-Operatoren?

青灯夜游
青灯夜游Original
2019-10-18 14:41:095962Durchsuche

Welchen Vorrang haben PHP-Operatoren?

Priorität von PHP-Operatoren

Die Priorität von PHP-Operatoren beschreibt die Reihenfolge, in der Operationen ausgeführt werden, wenn der Computer Ausdrücke berechnet. Vorgänge mit höherer Priorität werden zuerst ausgeführt, gefolgt von Vorgängen mit niedrigerer Priorität. Wir sagen zum Beispiel oft, dass zuerst Multiplikation und Division durchgeführt werden und dann Addition und Subtraktion.

Reihenfolge der PHP-Operator-Rangfolge

In der folgenden Tabelle ist die Rangfolge der Operatoren von hoch nach niedrig aufgeführt. Operatoren in derselben Zeile haben dieselbe Priorität, und die Priorität der Operatoren wird im Ausdruck von links nach rechts ausgewertet.

优先级 结合方向 运算符 附加信息
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 , 多处用到

Beispiel

Für Operatoren mit derselben Priorität bedeutet die linke assoziative Richtung, dass die Auswertung von links nach rechts erfolgt, und die rechte assoziative Richtung bedeutet das Gegenteil. Es ist möglich, dass ein Operator mit gleicher Priorität ohne assoziative Richtung nicht mit sich selbst kombiniert werden kann.

Zum Beispiel ist in PHP 1 < 1 eine unzulässige Anweisung, 1 <= 1 == 1 jedoch nicht. Weil <= eine höhere Priorität hat als ==.

&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;

Unter der Voraussetzung, dass wir uns über die Priorität von PHP-Operationen im Klaren sind, ist es am besten, beim Schreiben von Operatoren Klammern zu verwenden, um die Priorität zu kennzeichnen. Dies ist besser lesbar und auch eine gute Programmiergewohnheit.

Weitere PHP-Kenntnisse finden Sie auf der chinesischen PHP-Website!

Das obige ist der detaillierte Inhalt vonWelchen Vorrang haben PHP-Operatoren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Was für ein System kann PHP?Nächster Artikel:Was für ein System kann PHP?