操作符对操作数进行操作,改变传入的值。例如,在2 + 3
中,2和3是操作数,+
是操作符。有三种操作符:一元、二元和三元操作符。一元操作符只有一个操作数,二元操作符有两个操作数,三元的有三个。如你所见,+
是二元操作符,将两个变量作为输入。
PHP中有大量操作符,你需要重点记忆14个。
首先是最重要的操作符。不用一次全部记忆,后面有例子来帮你记忆:
操作符 | 说明 |
---|---|
+ | 二元,将操作数一同操作数二相加。 |
- | 二元,从操作数一种减去操作数二。 |
* | 二元,将操作数一同操作数而相乘。 |
/ | 二元,操作数一除以操作数二。 |
. | 二元,将字符串一同字符串二相连。 |
! | 一元,取反操作。 |
++和-- | 一元,变量自增或自减。 |
= | 二元,将操作数二赋值给操作数一。 |
== | 二元,测试操作数一同操作数是否相等。 |
=== | 二元,测试操作数一同操作数是否绝对相等。 |
<和> | 二元,小于和大于,也被叫做“低俗小说”操作符(如果不知道也没关系)。 |
&& | 二元,逻辑与,测试两边的条件是否都为真。 |
|| | 二元,逻辑或,测试两边的条件是否至少一边为真。 |
下面是这些操作符使用的一些例子:
<?php
$somevar = 5 + 5; // 10
$somevar = 5 - 5; // 0
$somevar = 5 + 5 - (5 + 5); // 0
$somevar = 5 * 5; // 25
$somevar = 10 * 5 - 5; // 45
$somevar = $somevar . "appended to end";
$somevar = false;
$somevar = !$somevar; // $somevar is now set to true
$somevar = 5;
$somevar++; // $somevar is now 6
$somevar--; // $somevar is now 5 again
++$somevar; // $somevar is 6
?>
注意在第三个表达式中,使用了括号来进行分隔,改变了运算的优先级。有时候有些括号是不必要的,如10 * 5 - 5
当中会优先计算10 * 5
,因为乘法的优先级要高于减法。
有时候虽然计算的时候有明确的优先级,但是使用括号可以使你表达式的含义更加明确。括号内的表达式通常会有限计算,你可以使用任意顺序的括号来正确表示你的表达式。
作者说明:如果你直接使用,你可能忽略这句话:有时候虽然计算的时候有明确的优先级,但是使用括号可以使你表达式的含义更加明确。
我不能说这有多重要,如果你不使用括号,你迫使你代码的读者记忆操作符优先级和关系表,这是不对的。在一些可能有歧义的情况下不用括号,上帝也会抓狂的。