PHP4手册:语法(三) 运算符号
--------------------------------------------------------------------------------
算术运算
--------------------------------------------------------------------------------
算术运算 (arithmetic operators) 符号,就是用来处理四则运算的符号,这是最简单,也最常用的符号,尤其是数字的处理,几乎都会使用到算术运算符号。
符号 意义
+ 加法运算
- 减法运算
* 乘法运算
/ 除法运算
% 取余数
++ 累加
-- 递减
以下为简单的算术运算范例
$a = 8;
$b = 2;
$c = 3;
echo $a+$b."
\n";
echo $a-$b."
\n";
echo $a*$b."
\n";
echo $a/$b."
\n";
echo $a%$c."
\n";
$a++;
echo $a."
\n";
$c--;
echo $c;
?>
--------------------------------------------------------------------------------
字串运算
--------------------------------------------------------------------------------
字串运算 (string operator) 的运算符号只有一个,就是英文的句号 .。它可以将字串连接起来,变成合并的新字串。
以下是字串运算的例子
$a = "PHP BIBLE";
$b = "值得您购买";
echo $a.": ".$b;
?>
--------------------------------------------------------------------------------
设定运算
--------------------------------------------------------------------------------
设定运算 (assignment operator) 有时会让人搞得一头雾水,不过它可以让程式更精简,增加程式的执行效率。
符号 意义
= 将右边的值连到左边
+= 将右边的值加到左边
-= 将右边的值减到左边
*= 将左边的值乘以右边
/= 将左边的值除以右边
%= 将左边的值对右边取余数
.= 将右边的字串加到左边
$a = 5;
$a += 2; // 即 $a = $a + 2;
echo $a."
\n";
$b = "哇";
$b .= "哈"; // $b = "哇哈";
$b .= "哈"; // $b = "哇哈哈";
echo "$b
\n";
?>
--------------------------------------------------------------------------------
位元运算
--------------------------------------------------------------------------------
PHP 的位元运算子 (bitwise operators) 共有六个,提供数字做一些快速而低阶的运算。欲了解更多有关位元运算的资讯,可以参考离散数学方面的书籍。
符号 意义
& 且 (And)
| 或 (Or)
^ 互斥 (Xor)
<< 向左移位
>> 向右移位
~ 取 1 的补数
--------------------------------------------------------------------------------
逻辑运算
--------------------------------------------------------------------------------
逻辑运算 (logical operators) 通常用来测试真假值。最常见到的逻辑运算就是回圈的处理,用来判断是否该离开回圈或继续执行回圈内的指令。
符号 意义
< 小于
> 大于
<= 小于或等于
>= 大于或等于
== 等于
!= 不等于
&& 而且 (And)
and 而且 (And)
|| 或者 (Or)
or 或者 (Or)
xor 互斥 (Xor)
! 不 (Not)
$a = 5;
if ($a != 5) {
echo "$a 不是 5";
} else {
echo "$a 是 5";
}
?>
--------------------------------------------------------------------------------
其它运算符号
--------------------------------------------------------------------------------
除了上述的运算符号之外,还有一些运算符号难以归类。
符号 意义
$ 变数
& 变数的指标 (加在变数前)
@ 不显示错误讯息 (加在函数前)
-> 物件的方法或者属性
=> 阵列的元素值
? : 三元运算子
其中比较特殊的是三元运算子 ? :,以下例来解释
(expr1) ? (expr2) : (expr3);
若 expr1 的运算结果为 true,则执行 expr2;否则执行 expr3。实际上它有点类以 if...else 回圈,但可以让程式较精简有效率。