为什么要分析这个呢?
我看见燕十八老师155级视频中 的defined(‘ACC’)||exit(‘ACC Denied’)的用法感觉挺帅的,
//分析||用法
/*
* 第一种, echo false||true;打印1 bool(true)
* echo 0||3; 打印1
* 第二种, echo false||false;打印空格 bool(false)
* echo 0||0; 打印空格
* 第三种, echo true||false;打印1 bool(true)
* echo 2||false; 打印1
* 第四种, echo true||true; 打印1 bool(true)
* echo 2||3; 打印1
*/
解释一下第一种情况,false||true,一看就知道打印的是true,true==1,所有打印1 举个例子
$a = true;
echo '1';
$a||exit('错误了');
echo '2';
打印出来的结果是12,这个很容易重上面就看出来,如果$a=false,就打印出来1错误了,下面来看一个例子,可能会用到,但应该不会用到这么长
$a = '媳妇';
echo '1';
$a=='丈母狼'||$a=='老丈'||$a=='舅舅'||$a=='小舅子'||$a=='媳妇'||exit('猜不到');
echo '2';
echo $a;打印出来媳妇,当然利用运算符的优先级,还有更帅的用法
$a = '媳妇';
echo '1';
$a=='丈母狼'||$a=='老丈'||$a=='舅舅'||$a=='小舅子'||$a =='媳妇'&&tt($a)||exit('猜不到');
echo '2';
echo $a;
function tt($name){
echo $name.'
调用了方法
';
return true;
}
/打印出来 1媳妇调用了方法 2媳妇 ,如果return false,就会打印出来 1媳妇调用了方法 猜不到