PHP 运算符

** 逻辑运算符**

&&是逻辑运算符,代表“并且”也就是常说的 AND。常见的还有如下几个:

!$a Not(逻辑非) TRUE,如果 $a 不为 TRUE。

$a && $b And(逻辑与) TRUE,如果 $a 与 $b 都为 TRUE。

$a || $b Or(逻辑或) TRUE,如果 $a 或 $b 任一为 TRUE。


&是位运算符,$c = $a & $b, 将把 $a 和 $b 的二进制位中都为 1 的位设为 1。

如5&3

=>101 & 11 这个是二进制
=>1

赋值运算符

1.“=”:把右边表达式的值赋给左边的运算数。它将右边表达式值复制一份,交给左边的运算数。换而言之,首先给左边的运算数申请了一块内存,然后把复制的值放到这个内存中;

赋值	等同于	描述
x = y	x = y	右侧表达式为左侧运算数设置值。
x += y	x = x + y	加
x -= y	x = x - y	减
x *= y	x = x * y	乘
x /= y	x = x / y	除
x %= y	x = x % y	模数

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

<?php 
    $a = "我在慕课网学习PHP!";
	$b = $a;   //$b =我在慕课网学习PHP
	$c = &$a;	//第一次$c =我在慕课网学习PHP
	$a = "我天天在慕课网学习PHP!";
	echo $b."<br />"; //输出: 我在慕课网学习PHP!
	echo $c."<br />"; //输出: 我天天在慕课网学习PHP!
	//第二次$c =我在慕课网学习PHP
?>

比较运算符

1.比较运算符主要是用于进行比较运算的,例如:等于、全等、不等、大于、小于。

2.在PHP中常用的比较运算符如下表:

运算符	名称	例子	结果
==	等于	$x == $y	如果 $x 等于 $y,则返回 true。
===	全等(完全相同)	$x === $y	如果 $x 等于 $y,且它们类型相同,则返回 true。
!=	不等于	$x != $y	如果 $x 不等于 $y,则返回 true。
<>	不等于	$x <> $y	如果 $x 不等于 $y,则返回 true。
!==	不全等(完全不同)	$x !== $y	如果 $x 不等于 $y,或它们类型不相同,则返回 true。
>	大于	$x > $y	如果 $x 大于 $y,则返回 true。
<	小于	$x < $y	如果 $x 小于 $y,则返回 true。
>=	大于或等于	$x >= $y	如果 $x 大于或者等于 $y,则返回 true.
<=	小于或等于	$x <= $y	如果 $x 小于或者等于 $y,则返回 true。

三元运算符

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

<?php 
    $a = 78;//成绩
	$b = $a >= 60 ? "及格": "不及格"; 
	echo $b;  //页面输出: 及格
?>

逻辑运算符

1 .逻辑运算符主用是进行逻辑运算的,例如:逻辑与、逻辑或、逻辑异或、逻辑非等;

运算符	名称	例子	结果
and	与	$x and $y	如果 $x 和 $y 都为 true,则返回 true。
or	或	$x or $y	如果 $x 和 $y 至少有一个为 true,则返回 true。
xor	异或	$x xor $y	如果 $x 和 $y 有且仅有一个为 true,则返回 true。
&&	与	$x && $y	如果 $x 和 $y 都为 true,则返回 true。 //&& == and
||	或	$x || $y	如果 $x 和 $y 至少有一个为 true,则返回 true。 || == or
!	非	!$x	如果 $x 不为 true,则返回 true。	

2 .我们可以从投票的角度来理解逻辑运算:

逻辑与:要求所有人都投票同意,才会通过某协议;
逻辑或:只要求一个人投票同意就行;
逻辑异或:只能有且只能有一个人投票同意;
逻辑非:某个人要反对,但是通过逻辑非,使其反对无效;

字符串连接运算符

  • 连接运算符(“.”):它返回将右参数附加到左参数后面所得的字符串。
  • 连接赋值运算符(“.=”):它将右边参数附加到左边的参数后。
运算符	名称	例子	结果
.	串接	$txt1 = "Hello" $txt2 = $txt1 . " world!"	现在 $txt2 包含 "Hello world!"
.=	串接赋值	$txt1 = "Hello" $txt1 .= " world!"	现在 $txt1 包含 "Hello world!"

错误提示运算符

1 .PHP中提供了一个错误控制运算符“@”,对于一些可能会在运行过程中出错的表达式时,我们不希望出错的时候给客户显示错误信息,这样对用户不友好。于是,可以将@放置在一个PHP表达式之前,该表达式可能产生的任何错误信息都被忽略掉;

2 .如果激活了track_error(这个玩意在php.ini中设置)特性,表达式所产生的任何错误信息都被存放在变量$php_errormsg中,此变量在每次出错时都会被覆盖,所以如果想用它的话必须尽早检查。

3 .需要注意的是:错误控制前缀“@”不会屏蔽解析错误的信息,不能把它放在函数或类的定义之前,也不能用于条件结构例如if和foreach等。

4 .eg:不含错误控制运算符“@”的错误提示

递增递减运算符

运算符	名称	描述
++$x	前递增	$x 加一递增,然后返回 $x
$x++	后递增	返回 $x,然后 $x 加一递增
--$x	前递减	$x 减一递减,然后返回 $x
$x--	后递减	返回 $x,然后 $x 减一递减
<?php
$x=10; 
echo ++$x; // $x 加一递增,然后返回 $x, 输出 11 
echo "<br />";
echo $x; //输出11
echo "<br />";
 
$y=10; 
echo $y++; //返回 $x,然后 $x 加一递增,  输出 10
echo "<br />";
echo $y; //输出11
echo "<br />";
 
$z=5;
echo --$z; // $x 减一递减,然后返回 $x, 输出 4
echo "<br />";
echo $z; //输出4
echo "<br />";
 
$i=5;
echo $i--; // 返回 $x,然后 $x 减一递减,输出 5
echo "<br />";
echo $i; //输出4
?>
原文地址:https://www.cnblogs.com/QinTO/p/11834324.html