运算符考察点
- 1.错误运算符@: @在一个表达式之前 该表达式产生的所有错误都被忽略掉
- 2.运算符的优先级:
- 递增、递减 > ! > 算数运算符 > 大小比较 > (不)等比较 > 引用 > 位运算符(^) > 位运算符(|) > 逻辑与 > 逻辑或 > 三目 > 赋值 > and > xor > or
- 3.比较运算符
== 和 ===区别
等值判断(false的其中情况:0 0.0 ‘’ ‘0’ false null array() ) - 4. 递增、递减运算符
- 递增、递减运算符不影响布尔值
- 理解true++ 还是true false–还是false
- 递减NULL值没有效果 但是 递增NULL变1
- 在前的递增递减 –a ++b 先运算后返回
- 再后的递增递减 a– b++ 先返回在运算
- 5.逻辑运算符的短路作用
- $a =true || $b ==3 ; 前面成立 后面被短路
- $b= false && $a ==1; 前面是false 后面不执行
||和&& 与 or and 的优先级不同
如题:
$a = false || true;
$b= false or true;
$a $b 分别是什么?
解答: 首先优先级排序 || > = > or
$a = false || true; 先做 false || true 得到true 赋值给$a
$b= false or true; 先做$b的赋值操作。 则 $b = false
下列程序中 请写出打印结果
* $a = 0;
* $b = 0;
* if($a = 3 > 0 || $b = 3 > 0)
* {
* $a++;
* $b++;
* echo $a."\n";
* echo $b."\n";
* }
* 解答:
* 运算优先级排序: '>' > '||' > '='