- 递增|递减
1.运算符不影响布尔值。即:布尔值的递增,递减是没有效果的。ture还是ture
2.null的递减没有效果,但是null++会变成1
- 逻辑运算符
$a = false || true; //$a = true
$b = false or true; //$b = false
因为 or 的运算优先级是最低的,因此先执行了赋值运行,$b将被赋值为false
真题:
$a = 0;
$b = 0;
if ($a = 3 > 0 || $b = 3 > 0) {
$a++;
$b++;
echo $a; //1
echo $b; //1
}
解析:
该题中最核心的地方在于,掌握三个运算符的优先级顺序,顺序如下:
> || =
- php遍历数组的三种方式
for
只能遍历索引数组
foreach
可以遍历索引和关联数组
会对数组进行reset()操作,将指针指向开头,再进行遍历,每次都可以从头开始
while list() echo() 组合循环
可以遍历索引和关联数组
不会reset() 即不会将数组的指针指向开头,并且如果数组的指针,指向中间,那么此刻的遍历将会是从中间开始的,前面的内容不会遍历。
- switch … case…
switch中的表达式只能是 整形、浮点、字符串
真题:
如何优化if…elseif…语句?
答案:
-
将可能被命中的if尽量向前挪
-
如果判断的表达式是整形、浮点、字符串,可以使用switch case代替