PHP中常用的运算符------10

版权声明:俗世凡人行(释) https://blog.csdn.net/weixin_41887155/article/details/85720547

目录

一: 什么是运算符

二:PHP中的算术运算符

三: PHP中的赋值运算符

四: PHP中的比较运算符

五: PHP中的三元运算符

六: PHP中的逻辑运算符

七: PHP中的字符串连接运算符

八: PHP中的错误控制运算符

九: PHP 递增/递减运算符


一: 什么是运算符

1.运算符是告诉PHP做相关运算的标识符号。例如,你需要计算123乘以456等于多少,这时候就需要一个符号,告诉服务器,你需要做乘法运算;

2.PHP中的运算符有哪些?PHP运算符一般分为算术运算符、赋值运算符、比较运算符、三元运算符、逻辑运算符、字符串连接运算符、错误控制运算符

3.eg:

<?php 
$a = 1;
$b = 1;
$c = $a + $b;
echo $c; //2
?>

二:PHP中的算术运算符

1. 算术运算符主要是用于进行算术运算的,例如:加法运算、减法运算、乘法运算、除法运算;

2.在PHP中的常用的算术运算符对应下表:

PHP算术运算符
算术运算符 名称 示例 结果 举例
+ 加法 $a + $b $a和$b的和 3+4=7
- 减法 $a - $b $a和$b的差 6-4=2
* 乘法 $a*$b $a和$b的积 3*7=21
/ 除法 $a/$b $a和$b的商 8/2=4
% 取模 $a%$b $a除以$b的余数 6%3=0

 注意:大模小取余数,小模大取小;

3.eg:

<?php 
$english = 110; //英语成绩
$math= 118; //数学成绩
$biological = 80; //生物成绩
$physical = 90; //物理成绩
$sum = $english+$math+$biological+$physical; //总分
$avg = $sum / 4; //平均分
$x = $math - $english; //计算数学比英语高几分
$x2 = $english * $english;//学习下乘法的计算方法
$x3 = 7%3; //大模小取余
$x4 = 6%7; //小模大取小
echo "总分:".$sum."<br />";
echo "平均分:".$avg."<br />";
echo "数学比英语高的分数:".$x."<br />";
echo "英语成绩的平方:".$x2."<br />";
echo $x3."<br />";
echo $x4."<br />";

效果:

总分:398
平均分:99.5
数学比英语高的分数:8
英语成绩的平方:12100
1
6

4.取模算术符有啥用呢

   假设我们要在一个考场安排了一场考试,对考生从1开始,都进行了编号,那么怎么让服务器帮助我们计算考生在的位置呢,进而打印考场的考生对照表呢?

<?php 
$maxLine = 4; //每排人数
$no = 17;//学生编号
$line = ceil($no/$maxLine);
$row = $no%$maxLine?$no%$maxLine:$maxLine;	
echo "编号<b>".$no."</b>的座位在第<b>".$line."</b>排第<b>".$row."</b>个位置";
//编号17的座位在第5排第1个位置
?>

三: PHP中的赋值运算符

=>PHP的赋值运算符有两种,分别是

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 模数
<?php 
$x=10; 
echo $x; // 输出 10

$y=20; 
$y += 100;
echo $y; // 输出 120

$z=50;
$z -= 25;
echo $z; // 输出 25

$i=5;
$i *= 6;
echo $i; // 输出 30

$j=10;
$j /= 5;
echo $j; // 输出 2

$k=15;
$k %= 4;
echo $k; // 输出 3
?>

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

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

  注意: 此处$b在$a改变前已经赋值了,不改变,$c和$a是引用赋值关系,两个一同改变;

四: 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。

3.eg:

<?php
$x=100; 
$y="100";

var_dump($x == $y); //bool(true) 
echo "<br>";
var_dump($x === $y); //bool(false) 
echo "<br>";
var_dump($x != $y); //bool(false) 
echo "<br>";
var_dump($x !== $y); //bool(true) 
echo "<br>";

$a=50;
$b=90;

var_dump($a > $b); //bool(false) 
echo "<br>";
var_dump($a < $b); //bool(true)
?>

五: PHP中的三元运算符

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

2.eg:

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

六: PHP中的逻辑运算符

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

2.在PHP中常用的逻辑运算符如下表:

运算符 名称 例子 结果
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。
|| $x || $y 如果 $x 和 $y 至少有一个为 true,则返回 true。
! !$x 如果 $x 不为 true,则返回 true。

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

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

七: PHP中的字符串连接运算符

=>字符串连接运算符是为了将两个字符串进行连接,PHP中提供的字符串连接运算符有

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

eg:

<?php
$a = "Hello";
$b = $a . " world!";
echo $b; // 输出 Hello world!

$x="Hello";
$x .= " world!";
echo $x; // 输出 Hello world!
?>

八: PHP中的错误控制运算符

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

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

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

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

<?php  
 $conn = mysql_connect("localhost","username","password");
 echo "出错了,错误原因是:".$php_errormsg;
?>

效果:

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in D:\wwwroot\test\Ajax.php on line 2

Warning: mysql_connect(): Access denied for user 'username'@'localhost' (using password: YES) in D:\wwwroot\test\Ajax.php on line 2
出错了,错误原因是:mysql_connect(): Access denied for user 'username'@'localhost' (using password: YES)

5.eg:含错误控制运算符“@”

<?php  
 $conn = @mysql_connect("localhost","username","password");
 echo "出错了,错误原因是:".$php_errormsg;
?>

效果:

出错了,错误原因是:mysql_connect(): Access denied for user 'username'@'localhost' (using password: YES)

九: PHP 递增/递减运算符

运算符 名称 描述
++$x 前递增 $x 加一递增,然后返回 $x
$x++ 后递增 返回 $x,然后 $x 加一递增
--$x 前递减 $x 减一递减,然后返回 $x
$x-- 后递减 返回 $x,然后 $x 减一递减

eg:

<?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
?>

猜你喜欢

转载自blog.csdn.net/weixin_41887155/article/details/85720547