PHP | 运算符 知识梳理与运用实例

作者 : 开心源码 本文共3005个字,预计阅读时间需要8分钟 发布时间: 2022-05-12 共182人阅读
  • PHP运算符一般分为算术运算符、赋值运算符、比较运算符、三元运算符、逻辑运算符、字符串连接运算符、错误控制运算符。

1. PHP中的算术运算符

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

    demo:

<?php $english = 110; //英语成绩$math= 118; //数学成绩$biological = 80; //生物成绩$physical = 90; //物理成绩$sum = $english+$math+$biological+$physical;$avg = $sum / 4;$x = $math - $english;$x2 = $english * $english;echo "总分:".$sum."<br />";echo "平均分:".$avg."<br />";echo "数学比英语高的分数:".$x."<br />";echo "英语成绩的平方:".$x2."<br />";

运算结果:

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


2. PHP中的赋值运算符

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

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

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

demo:

<?php     $a = "东边日出西边雨,";    $b = $a;    $c = &$a;    $a = "道是无晴却有晴。";        echo $b."<br />";    echo $c."<br />";?>

运行结果:

东边日出西边雨,道是无晴却有晴。


3. PHP中的比较运算符

比较运算符主要是用于进行比较运算的,在PHP中常用的比较运算符如下表:

demo:

<?php      $a = 1;    $b = "1";    echo "1.<br />";    var_dump($a == $b);    echo "2.<br />";    var_dump($a === $b);    echo "3.<br />";    var_dump($a != $b);    echo "4.<br />";    var_dump($a <> $b);    echo "5.<br />";    var_dump($a !== $b);    $q = 1;    echo "5.0"."<br />";    var_dump($a !== $q);//“全等”就不是“不全等”了    echo "6.<br />";    var_dump($a < $b);    echo "7.<br />";    $c = 5;    var_dump($a < $c);    echo "8.<br />";    var_dump($a > $c);    echo "9.<br />";    var_dump($a <= $c);    echo "10.<br />";    var_dump($a >= $c);    echo "11.<br />";    var_dump($a >= $b);    echo "<br />";?>

运行结果:

1.bool(true)2.bool(false)3.bool(false)4.bool(false)5.bool(true)5.0bool(false)6.bool(false)7.bool(true)8.bool(false)9.bool(true)10.bool(false)11.bool(true)


4. PHP中的三元运算符

demo

<?php     $a = 134;//成绩    $b = $a >= 90 ? "及格": "不及格";     echo $b;?>

运行结果:

及格


5. PHP中的逻辑运算符

逻辑运算符主用是进行逻辑运算的,在PHP中常用的逻辑运算符如下表:

这里可以假设一个头投票场景来加深了解逻辑运算:
(假设投票同意为1,不同意为0,
我们把所有人投票的结果都用下列某一个逻辑运算串联起来,
其最终结果为1则通过某协议,否则不通过)
1、逻辑与:要求所有人都投票同意,才会通过某协议;
2、逻辑或者:只需求一个人投票同意就行;
3、逻辑异或者:投票同意的人数是单数;
4、逻辑非:某个人要反对,但是通过逻辑非,使其反对无效;反之假如他投同意票,则视之为反对;

  • “与”和“或者”的两种不同形式的运算符其优先级不同。

demo:

<?php     $a = TRUE; //A同意    $b = TRUE; //B同意    $c = FALSE; //C反对    $d = FALSE; //D反对    echo ($a and $b)?"通过":"不通过";    echo "<br />";    echo ($a or $c)?"通过":"不通过";    echo "<br />";    echo ($a xor $c xor $d)?"通过":"不通过";    echo "<br />";    echo !$c?"通过":"不通过";    echo "<br />";    echo $a && $d ?"通过":"不通过";    echo "<br />";    echo $b || $c || $d ?"通过":"不通过";?>

运行结果:

通过通过通过通过不通过通过


6. PHP中的字符串连接运算符

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

  • 连接运算符(.):它返回将右参数附加到左参数后面所得的字符串。
  • 连接赋值运算符(.=):它将右边参数附加到左边的参数后。(其实相似于+=等运算符机制)

demo:

<?php     $a = "此情可待成追忆";    $tip = $a.",只是当时已惘然。";        $b = "东边日出西边雨";     $b .= ",道是无晴却有晴。";        $c = "东边日出西边雨";     $c = $c. ",道是无晴却有晴。";        echo  $tip."<br />";    echo  $b."<br />";    echo  $c."<br />";?>

运行结果:

此情可待成追忆,只是当时已惘然。东边日出西边雨,道是无晴却有晴。东边日出西边雨,道是无晴却有晴。


7. PHP中的错误控制运算符

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

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

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

demo:

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

参考运行结果:


8. 取模运算的一个实例

假设我们要在一个考场安排了一场考试,对考生从1开始,都进行了编号,可以借助取模运算让服务器帮助我们计算考生在的位置呢,进而打印考场的考生对照表;
代码如下:

<?php      $maxLine = 4; //每排人数     $no = 17;//学生编号     $line = ceil($no/$maxline);//ceil() 返回大于或者者等于指定表达式的最小整数     $row = $no%$maxLine?$no%$maxLine:$maxLine;         echo "编号<b>".$no."</b>的座位在第<b>".$line."</b>排第<b>".$row."</b>个位置";?>

运行结果:

编号17的座位在第0排第1个位置

参考资料(慕课网)

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » PHP | 运算符 知识梳理与运用实例

发表回复