1、算术运算符php
+(加) $a + $b -(减) $a - $b *(乘) $a * $b /(除) $a / $b %(取余) $a % $b
2、字符串操做符编程
.(点)(php中惟一的字符串操做符)
3、赋值运算符
一、简单赋值运算符windows
=(等于号)
二、复合赋值运算符数组
+= $a += $b 等价于 $a = $a + $b -= $a -= $b 等价于 $a = $a - $b *= $a *= $b 等价于 $a = $a * $b /+ $a /= $b 等价于 $a = $a / $b %= $a %= $b 等价于 $a = $a % $b .= $a .= $b 等价于 $a = $a . $b
三、前置递增递减运算和后置递增递减运算浏览器
$a++ $a自己的值没有变,可是整个表达式的值将变成$a + 1 ++$a $a自己的值改变了,$a先被 $a = $a + 1,而后再返回$a + 1 $a-- $a自己的值没有变,可是整个表达式的值将变成$a - 1 --$a $a自己的值改变了,$a先被 $a = $a - 1,而后再返回$a + 1
四、引用操做符服务器
&
引用操做符&能够在关联赋值中使用。一般,在讲一个变量的值赋给另外一个变量的时候,先产生元变量的一个副本,而后再将它保存在内存的其余地方。例如:函数
$a = 5; $b = $a;
上例中,第一行代码是给$a赋值;第二行代码是首先产生$a的一个副本,而后再将它保存在$b中。若是随后改变$a的值,$b的值将不会改变。在看下面的例子:unix
$a = 5; $b = &$a; $a = 7; // $a and $b are now both 7
注意:引用不是一个独立的第二个指针,而是使用了原变量的指针,即$a和$b都指向了内存的相同地址。上例中,第二行就是$b引用的$a,当第三行$a的值发生变化时,引用过它的$b也跟着发生了变化。咱们能够经过重置打破这种引用关联:指针
unsert($a);
注意:这个重置只是重置了$a,它不会改变$b(7)的值,unsert($a)仅仅破坏了$a和值7保存在内存中的关联。能够把unsert($a)理解为对$a的注销。code
4、比较运算符
比较运算符返回的是逻辑布尔值:true或false。
==(等于) ===(恒等于) !=(不等于) !==(不恒等于) <>(不等于) <(小于) >(大于) <==(小于等于) >==(大于等于)
5、逻辑运算符
!(非) &&(与) ||(或) and(与) or(或) xor(异或) $a xor $b 若是$a或$b为true,则返回true。若是$a和$b都是true或都是false,则返回false。
注意:and和or比&&和||的优先级低。
6、位操做符
位操做符能够将一个整型变量看成一些列的位(Bit,比特)来处理。位操做符不常用。
&(按位与) $a & $b 将$a和$b的每一位进行“与”操做所得的结果 |(按位或) $a | $b 将$a和$b的每一位进行“或”操做所得的结果 ~(按位非) ~$a 将$a的每一位进行“非”操做所得的结果 ^(按位异或) $a ^ $b 将$a和$b的每一位进行“异或”操做所得的结果 <<(左位移) $a << $b 将$a左移$b位 >>(右位移) $a >> $b 将$a右移$b位
7、其余操做符
,(逗号) 用来分割函数参数或其余列表项,该操做符常常被附带(非独立)地使用。 new(初始化类的实例) ->(访问类的成员)
一、三元操做符?:
condition ? value if true : value if false
三元操做符能够被看作是 if else 的条件语句的简写。
二、错误抑制操做符
@(at符号)
错误抑制操做符@能够在任何表达式前面使用,即任何有值的或能够计算出值的表达式以前,例如:
$a = @(57 / 0);
若是上例中并未使用错误抑制操做符@,那么该行代码就会抛出一个除0警告,使用了@,该警告将被抑制,也就是不被抛出。
若是经过这种方法抑制了一些警告,一点遇到警告,就须要经过咱们提早写好的处理错误的语句来处理。
若是已经启用了php.ini中的track_errors特性,错误信息将被保存在全局变量$php_errormsg中。
三、执行操做符
``(一对反向单引号)执行操做符其实是一对操做符,是一对反向单引号。
php将试着将反向单引号之间的命令当作服务器端的命令来执行。表达式的值就是命令的执行结果。例如在unix系统中,可使用:
$out = `ls -la`; echo '<pre> ' . $out . '</pre> ';
在windows服务器上,可使用:
$out = `dir c:`; echo '<pre> ' . $out . '</pre> ';
以上两种状况都会获得一个目录列表而且将该列表保存在$out中,而后,再将该列表显示在浏览器中或用其余方法来处理。
四、数组操做符
注意:下面语法说明中,$a和$b都不是普通标量值,而是数组类型
+(联合) $a + $b 返回一个包含了$a和$b中全部元素的数组 ==(等价)$ == $b 若是$a和$b具备相同的键值对,返回true ===(恒等) $a === $b 若是$a和$b具备相同的键值对以及相同的顺序,返回true !=(非等价) $a != $b 若是$a和$b不是等价的,返回true <>(非等价) $a <> $b 若是$a和$b不是等价的,返回true !==(非恒等) $ !== $b 若是$a和$b不是恒等的,返回true
五、类型操做符
instanceof(惟一的类型操做符),该操做符在面向对象编程中使用。
instanceof操做符容许检查一个对象是不是特定类的实例。例如:
<?php class sampleClass(); $myObject = new sampleClass(); if ($myObject instanceof sampleClass) { echo 'myObject is an instance of sampleClass'; } ?>