定义
  运算符即做运算的标识符号。PHP运算符一般分为算术运算符、赋值运算符、比较运算符、三元运算符、逻辑运算符、字符串连接运算符、错误控制运算符、递增递减运算符和数组运算符

算术运算符

代码片段
10 行
+(加法)
    $x + $y
-(减法)
    $x - $y
*(乘法)
    $x * $y
/(除法)
    $x / $y
%(求模)
    $x % $y

赋值运算符
  PHP的赋值运算符有两种,分别是直接赋值"="和引用赋值"&"

[1]直接赋值

直接赋值"="把右边表达式的值赋给左边的运算数。它将右边表达式值复制一份,交给左边运算数。换言之,首先给左边运算数申请一块内存,然后把复制的值放到这块内存中

代码片段
6 行
x = y
x += y
x -= y
x *= y
x /= y
x %= y

[2]引用赋值

引用赋值&意味着两个变量都指向同一个数据。它将使两个变量共享一块内存,如果这个内存存储的数据变了,那么两个变量的值都会发生变化

PHP
8 行
<?php 
    $a = "测试内容1";
    $b = $a;
    $c = &$a;
    $a = "测试内容2";
    echo $b."<br />";//测试内容1
    echo $c."<br />";//测试内容2
?>

比较运算符
  比较运算符主要用来进行比较运算

代码片段
9 行
==         等于 
===        全等
!=         不等
<>         不等
!==        不全等
>          大于
<          小于
>=         大于等于
<=         小于等于

三元运算符
  "?:"三元运算符是一个比较运算符,对于表达式(expr1)?(expr2):(expr3),如果expr1的值为true,则此表达式的值为expr2,否则为expr3

PHP
5 行
<?php 
    $a = 78;//成绩
    $b = $a >=60?"及格":"不及格";
    echo $b;//及格
?>

逻辑运算符
  逻辑运算符主要是进行逻辑运算

代码片段
6 行
and        与
or         或
xor        异或
&&         与
||         或
!          非

字符串运算符
  字符串连接运算符是为了将两个字符串进行连接

[1]连接运算符(.)

PHP
6 行
<?php 
    $a = 'hello';
    $b = $a . ' world!';
    //hello world!
    echo $b;
?>

[2]连接赋值运算符(.=)

PHP
6 行
<?php 
    $x = 'hello';
    $x .= ' world!';
    //hello world!
    echo $x;
?>

错误控制运算符
  PHP提供了一个错误控制运算符@,对于一些可能会有运行过程中出错的表达式,不希望出错时显示错误信息时,将@放置在一个PHP表达式之前。如果激活了track_error特性,表达式产生的任何错误信息都被存放在变量$php_errormsg中,此变量在每次出错时都会被覆盖

[注意]错误控制前缀@不会屏蔽解析错误的信息,不能把它放在函数或类的定义之前,也不能用于条件结构如if和foreach等

PHP
6 行
<?php
$a = 1;
echo @ $a;//1
$b;
echo @ $b;//不报错
?>

递增/递减运算符

代码片段
4 行
++$x     前递增
$x++     后递增
--$x     前递减
$x--     后递减
PHP
10 行
<?php
$x=10; 
echo ++$x; // 输出 11
$y=10; 
echo $y++; // 输出 10
$z=5;
echo --$z; // 输出 4
$i=5;
echo $i--; // 输出 5
?>

数组运算符
  用于比较数组

代码片段
6 行
+      联合
==     相等
===   全等
!=     不相等
<>     不相等
!==   不全等