程序员

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

2019-01-30  本文已影响45人  凌川江雪

1. PHP中的算术运算符

<?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.0
bool(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中的错误控制运算符

如果激活了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个位置

参考资料(慕课网)

上一篇下一篇

猜你喜欢

热点阅读