php中的运算符
算数运算符
字符串运算符
赋值运算符
比较运算符
逻辑运算符
位运算符
其他运算符
运算符的优先级
运算符是可以通过给出的一或多个值(用编程行话来说,表达式)来产生另一个值(因而整个结构成为一个表达式)的东西。所以可以认为函数或任何会返回一个值(例如 print)的结构是运算符,而那些没有返回值的(例如 echo)是别的东西。 有三种类型的运算符: 一元运算符,只运算一个值,例如 !(取反运算符)或 ++(加一运算符)。 二元运算符,有两个操作数,PHP支持的大多数运算符都是这种。 三元运算符:? :。它应该被用来根据一个表达式在另两个表达式中选择一个,而不是用来在两个语句或者程序路线中选择。把整个三元表达式放在扩号里是个很好的主意。
1.算数运算符运算符意义示例结果
+加法运算$a+$b$a和$b的和
-减法/取负运算$a-$b$a和$b的差
*乘法运算$a*$b$a和$b的积
/除法运算$a/$b$a和$b的商
%求余运算符(取模运算)$a%$b$a和$b的余数
++累加1$a++或++$a$a的值加1
--递减1$a--或--$a$a的值减1
2.字符串运算符
在PHP中,有两个字符串运算符: 第一个是连接运算符(“.”),它返回其左右参数连接后的字符串。 第二个是连接赋值运算符(“.=”),它将右边参数附加到左边的参数后。
$a = "Hello ";
$b = $a . "World!"; // 现在$b的值: Hello World!
$a = "Hello ";
$a .= "World!"; // 现在$a的值: Hello World!
?>
3.赋值运算符
基本的赋值运算符是“=”。一开始可能会以为它是“等于”,其实不是的。它实际上意味着把右边表达式的值赋给左边的运算数。运算符意义示例
=将一个值或表达式的结果赋给变量$x=3
+=将变量与所赋的值相加后的结果赋给该变量$x+=3等价于$x=$x+3
-=将变量与所赋的值相减后的结果赋给该变量$x-=3等价于$x=$x-3
*=将变量与所赋的值相乘后的结果赋给该变量$x*=3等价于$x=$x*3
/=将变量与所赋的值相除后的结果赋给该变量$x/=3等价于$x=$x/3
%=将变量与所赋的值求模后的结果赋给该变量$x%=3等价于$x=$x%3
.=将变量与所赋的值相连后的结果赋给该变量$x.="H"等价于$x=$x."H"
4.比较运算符运算符描述说明示例
>大于当左边大于右边时返回true,否则返回false$a>$b
>=大于等于当左边大于等于右边时返回true,否则false$a>=$b
<=小于等于当左边小于等于右边时返回true,否则false$a<=$b
==等于两边操作数的值相等时返回true,否则false$a==$b
===全等于两边值相等并且类型相等返回true,否则false$a===$b
<>或!=不等于两边值不等时返回true,否则返回false$a<>$b
$a!=$b
!==非全等于两边值与类型都相同时返回false,否则true$a!==$b
5.逻辑运算符运算符描述说明示例
and或&&逻辑与当两边操作数都为true时,返回true,否则返回false$a and $b
$a && $b
or或||逻辑或当两边操作数都为false时,返回false,否则返回true$a or $b
$a || $b
not或!逻辑非当操作数为true时返回false,否则返回truenot $b
!$b
xor逻辑异或当两边操作数只有一个为true时,返回true,否则返回false$a xor $b
6.位运算符(用的极少)运算符描述说明示例
&按位与只有参与运算的两位都为1时,运算结果才为1,否则为0.$a & $b
|按位或只有参与运算的两位都为0时,运算结果才为0,否则为1.$a | $b
^按位异或只有参与运算的两位不同,运算结果才为1,否则为0.^$b
~按位非将用二进制表示的操作数中的1变成0,0变成1.~$a
<
>>右移将左边的操作数在内存中的二进制数据左移右边操作数指定的位数,左边移空的部分补上0$a>>$b
7.其他运算符运算符描述示例
? :三元运算符,可以提供简单的逻辑判断。$a
``反引号(` `)是执行运算符,PHP将尝试将反引号中的内容作外壳命令来执行,并将其输入信息返回$a=`ls -al`
@错误控制运算符,当将其放置在一个PHP表达式之前,该表达式可能产生的任何错误信息都被忽略掉。@表达式
=>数组下标指定符号,通过此符号指定数组的键与值。键=>值
->对象成员访问符号,访问对象中的成员属性或成员方法。对象->成员
instanceof类型运算符,用来测定一个给定的对象是否来自指定的对象类。对象instanceof类名
8.可变变量
有时候使用可变变量名是很方便的。就是说,一个可变变量获取了一个普通变量的值作为这个可变变量的变量名。 例如:
$a = 'hello';//普通变量
$$a = "world";//可变变量echo "$a ${$a}";//输出:hello world
echo "$a $hello";//输出:hello world
?>
9.变量的引用赋值
引用操作符&可以在关联赋值中使用,就像一个别名,使得变量都指向了内存的相同地址。
$a=5;
$b=&$a;
echo $b;//输出5
$a=7;
echo $b;//输出7
?>
引用赋值的结果是,一个变量改变,另一个变量也会跟着变
可通过unset($a)重置变量与内存的关联