您的位置:首页 > 编程语言 > PHP开发

PHP基础之运算符(五)【短路特性】

2017-01-24 14:47 274 查看
<?php

/**



 运算符的短路

 && 逻辑与  || 逻辑或 存在短路

  & 按位与   | 按位或 不存在短路 

*/

 // || 逻辑或 存在短路

 

 $a=1;  //返回一个TRUE 1;

 $a==1 || $b=100; //是一个赋值表达式,生成变量$b;

 echo $b;

 结果:为空

 //【逻辑或:前面表达式为真,后面不执行】

 

 $a=1;  //返回一个TRUE 1;

 $a==2 || $b=100; //是一个赋值表达式,生成变量$b;

 echo $b;

 结果:100;

 //echo '$b等于:'.$b;

 //结果:$b等于:100;

 //【逻辑或:前面表达式为假,后面才执行】

 

 // && 逻辑与 存在短路

 

 $a=1;  //返回一个TRUE 1;

 $a==2 && $b=100; //是一个赋值表达式,生成变量$b;

 echo $b;

 结果:为空;

 //echo '$b等于:'.$b;

 //结果:$b等于:;

 //【逻辑与:前面表达式为假,后面不执行】

 

 $a=1;  //返回一个TRUE 1;

 $a==2 && $b=200; //是一个赋值表达式,生成变量$b;

 echo $b;

 结果:为空;

 //echo '$b等于:'.$b;

 //结果:$b等于:200;

 //【逻辑与:前面表达式为真,后面才执行】

 

 // & 按位与 不存在短路 

 $a=2;

 $a==3 & $c=500;//【参加运算的两边同位数都为1的时候才为1,所以两边都需要进行计算】

 echo $c;

 结果:500;

 

 // | 按位或 不存在短路 

 

 $a=2;

 $a==2 | $c=500;//【参加运算的两边同位数都为0的时候才为0,所以两边都需要进行计算】

 echo $c;

 结果:500;

 

 //运算符的短路特性

 $file=@fopen('test.txt','r') or die("文件不存在!test必须存在!");//【根目录新建一个tester.txt文档,内容随意】

 $file=fopen('tester.txt','r') or die("文件不存在!test必须存在!");

//前面为真,后面不执行;前面为假,后面才执行;

?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息