PHP运算符
算数运算符
<?php
/*
+ - * / % ++ -- **
加法 减法 乘法 除法 求模(取余) 累加1 递减1 求幂运算
*/
//求模(取余)运算
$x=10%3; //整数类型取余
var_dump($x); //输出1
$y=10.9%3.3; //浮点数取余
var_dump($y); //输出1
//$z="10ren"%"3ren"; //字符串类型取余
//var_dump($z); //输出整型1
//递增和递减原理相似
$a=5;
$b=$a++; //先将$a=5的值赋给$b,再进行自增操作
var_dump($b); //输出5
$a=5;
$b=++$a; //先进行自增操作,再把++$a后的值赋给$b
var_dump($b); //输出6
?>
字符串运算符
<?php
//字符串运算符只有一个英文的句号(.),也称为连接符
$username="tom";
$password="123456";
echo "用户名称是:".$username.", 密码为: ".$password."。";
?>
赋值运算符
<?php
$a = $b = $c = $d = $e = 100;
$a += 10; //等价于$a = $a + 10;
$b -= 10; //等价于$b = $b - 10;
$c *= 10; //等价于$c = $c * 10;
$d /= 10; //等价于$d = $d / 10;
$e %= 10; //等价于$e = $e % 10;
$result = "结果是:";
$result .= "${e}"; //.=将变量与所赋的值相连后再赋给这个变量
echo $result;
?>
比较运算符
<?php
//比较运算符也成为关系运算符,又称作条件运算符
/*
> < >= <= == === <>或!= !== <=>(PHP7开始提供) ??(PHP7开始提供)
非全等于 太空船运算符 null合并操作符
*/
$a = 5;
$b = 5;
$c = true;
$d = false;
//== 等于 只需要两边的数值相等则会返回true
var_dump($a == $b); //true
var_dump($a == $c); //true
//=== 全等于 需要两边的数值相等和类型相等才会返回true
var_dump($a === $b); //true
var_dump($a === $c); //false
//!= 不相等 两边的数值不相等时返回true
var_dump($a != $b); //false
var_dump($a != $c); //true
//!== 非全等于 只有两边的数值不相等和类型也不相等时才会返回true
var_dump($a !== $c); //true
var_dump($a !== $b); //false
?>
逻辑运算符
<?php
/*
and或&& 逻辑与 当两边的值都是true时,返回true,否则返回false
or或|| 逻辑或 当两边的值都是false时,返回false,否则返回true
not或! 逻辑非 当操作数为true时,返回false,否则返回true
xor 逻辑异或
*/
$a = 5;
$b = 5;
$c = true;
$d = false;
var_dump($a && $b && $c && $d); //false
var_dump($a || $b || $c || $d); //true
var_dump($a && $b && $c && !$d); //true
?>
位运算符
<?php
/*
& 短路或
| 短路与
^ 按位异或
~ 按位非
<< 左移
>> 右移
*/
var_dump(1 & 0);
?>
其他运算符
<?php
/*
? : 三元运算符
`` 反引号是执行运算符 操作数据库会用到
@ 错误控制运算符
=> 数组下标指定符号
-> 对象成员访问符号
instanceof 类型运算符
*/
$a = 5;
$b = 6;
var_dump($a<$b ? $c=1 : $c=0);
var_dump(10>100 ? true : false);
@$x = 10 / 0;
?>
运算符优先级顺序(不用死记硬背),可以使用 ()来控制运算顺序