Der
-Operator ist etwas, das einen oder mehrere Werte (im Programmierjargon einen Ausdruck) annimmt und einen anderen Wert erzeugt (somit wird die gesamte Struktur zu einem Ausdruck).
1. Arithmetischer Operator
Operatorname Ergebnis $a + $b Addition $a und $b
$a - $b Subtraktion Die Differenz zwischen $a und $b
$a * $b Multiplikation Das Produkt von $a und $b
$a / $b Division Der Quotient von $a dividiert durch $b
$a % $b Modulo Rest von $a dividiert durch $b
Inkrementierungs-/Verringerungsoperator Operatorname Ergebnis
++$a Vorheriger Addiere den Wert von $a plus eins, und führen Sie dann die Operation
$a++ aus. Addieren Sie dann zuerst den Wert von $a und führen Sie die Operation aus, dann addieren Sie eins
--$a Subtrahieren Sie vor dem Wert von $a minus eins und führen Sie dann die Operation aus
$ A – dann zuerst den Wert von $ A reduzieren und dann eine
Instanz abziehen:
<?php echo $a=5+”5th”; //输出:10 echo 10%3; //输出:1 echo 10+ $a++; //输出:20 echo 5- --$a; //输出:-5 ?>
$a == $b Gleich WAHR, wenn $a gleich $b ist
$a === $b Kongruent WAHR, wenn $a gleich $b ist und sie vom gleichen Typ sind
$a != $ b ist nicht gleich WAHR, wenn $a nicht gleich $b ist
$a <> $b ist nicht gleich WAHR, wenn $a nicht gleich $b ist
$a !== $b ist nicht kongruent WAHR wenn $a nicht gleich $b ist oder sie von unterschiedlichem Typ sind
$a < $b kleiner als WAHR, wenn $a strikt kleiner als $b ist
$a > wenn $a streng genommen $b
$a <= $b Kleiner oder gleich WAHR ist, wenn $a kleiner oder gleich $b ist
$a >= $b Größer als oder gleich WAHR, wenn $a größer oder gleich $b ist
Ein weiterer bedingter Operationsoperator ist der „ ? : “ (oder ternäre) Operator.
Beispiel:
<?php var_dump(0=="a"); //输出:bool(true) var_dump(0=="00"); //输出:bool(true) var_dump(0==="00"); //输出:bool(false) var_dump(0<>"abc"); //输出:bool(false) var_dump(0!=="01"); //输出:bool(true) $a=10; $b=20; $str=$a>$b? "true":"false"; echo $str; //输出:false ?>
4. 逻辑运算符
运算符 名称 结果
$a and $b 逻辑与 TRUE,如果 $a 与 $b 都为 TRUE。
$a or $b 逻辑或 TRUE,如果 $a 或 $b 任一为TRUE。
$a xor $b 异或 TRUE,如果 $a 和 $b 不同时
! $a 逻辑非 TRUE,如果 $a 不为 TRUE。
$a && $b 逻辑与 TRUE,如果 $a 与 $b 都为TRUE。
$a || $b 逻辑或 TRUE,如果 $a 或 $b 任一为TRUE。
其中and与&& 、or与||是同一逻辑运算符的两种写法。
逻辑与和逻辑或 都是短路运算符。
在遇到下列逻辑表达式时,PHP解释程序将不会计算右边的表达式:
<?php $a=10; if(false && (++$a)); echo $a; //输出:10 $b=10; if(true or (++$b)); echo $b; //输出:10 ?>
5. 位运算符
位运算符允许对整型数中指定的位进行置位。如果左右参数都是字符串,则位运算符将操作字符的 ASCII 值。
表达式 名称 结果
$a & $b 按位与 将把 $a 和 $b 中都为 1 的位设为 1。
$a | $b 按位或 将把 $a 或者 $b 中为 1 的位设为 1。
$a ^ $b 按位异或 将把 $a 和 $b 中不同的位设为 1。
~ $a 按位非 将 $a 中为 0 的位设为 1,反之亦然。
$a << $b 左移 将 $a 中的位向左移动 $b 次(每一次 移动都表示“乘以 2”)。
$a >> $b 右移 将 $a 中的位向右移动 $b 次(每一次 移动都表示“除以 2”)。
其他运算符
1. 字符串运算符
有两个字符串运算符。第一个是连接运算符(“.”),它返回其左右参数连接后的字符串。第二个是连接赋值运算符(“.=”),它将右边参数附加到左边的参数后。
错误抑制操作符
在最常见的数据库连接与文件创建操作或出现除0等异常时,可以用@符号来抑制函数错误信息输出到浏览器端 $a=@(5/0)
外部命令执行
使用``来运行外部系统命令,注意不是单引号,是ESC下面那个按键
<?php $out=`dir c:`; print_r($out); ?> //不建议使用
实例:
<?php $a="hello"; $a.=" world! "; //等同于:$a=$a." world!"; echo $a; //输出:hello world! $m = 3; $m += 5; //等同于:$m=$m+5; echo $m; //输出:8 $c = ($b = 4) + 5; echo $c; //输出:9 ?>
2. 运算符优先级
下表从低到高列出了运算符的优先级。
结合方向 运算符
左 ,
左 or
左 xor
左 and
右 print
右 = += -= *= /= .= %= &= |= ^= ~= <<= >>=
左 ? :
左 ||
左 &&
结合方向 运算符
左 |
左 ^
左 &
无 == != === !==
无 < <= > >=
左 << >>
左 + - .
左 * / %
右 ! ~ ++ -- (int) (float) (string) (array) (object) @
右 [
无 new
Das obige ist der detaillierte Inhalt vonEinführung in verschiedene Operatoren in PHP und Beispiele. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!