php三元运算符知识汇总
《PHP实例:php三元运算符知识汇总》要点: 本日在改论文在线的时候遇到了一个语句看不懂: $if_summary = $row['IF_SUMMARY']==2?'是':'否'; 后来百度后发现是PHP的三元运算符 这句话的意思就等于是PHP编程 if($row['IF_SUMMARY']==2){ $if_summary="是"; }else{ $if_summary="否"; } 三元运算符的功能与“if...else”流程语句一致,它在一行中书写,代码非常精练、执行效率更高.PHP编程 在PHP程序中恰本地使用三元运算符能够令脚本更为简洁、高效.PHP编程 代码格式如下:(expr1) ? (expr2) : (expr3); 解释:如果条件“expr1”成立,则执行语句“expr2”,否则执行“expr3”. 实现同样的功能,若使用条件流程语句,就必要书写多行代码: if(expr1) { expr2; } else { expr3; } 可见,前面所说的三元运算符之好并非夸张.可是,多数情况下我们只在代码较为简单的时候使用三元运算符,即执行语句只为单句的时候.如:PHP编程 $a>$b ? print "a大于b" : print "a小于b"; 事实上,三元运算符可以扩展使用,当设置的条件成立或不成立,执行语句都可以不止一句,试看以下格式:PHP编程 (expr1) ? (expr2).(expr3) : (expr4).(expr5);PHP编程 我们非常明显地看到,多个执行语句可以使用用字符串运算符号(“.”)连接起来,各执行语句用小角括号包抄起来以表明它是一个独立而完整的执行语句.这样扩展后它的功能更为逼近“if...else”流程语句. 同时三元运算符还可以嵌套使用.例如,a大于b成立时:如果a小于c,那么x=c-a否则x=a-c;否则a小于b成立时:如果b小于c,那么x=c-b否则x=b-c:PHP编程 $a>$b ? $x=($a<$c ? $c-$a : $a-$c) : $x=($b<$c ? $c-$b : $b-$c);PHP编程 嵌套使用的三元运算符可读性不太好,日后对代码的维护极可能存在问题,但比起“if...else”之类的流程语句,在上述情形之下,它的确太简练了,这是它的诱人之处. $a>$b ? print "Yes" : ""; $a>$b ? '': print 'No'; 应该注意的是:在使用三元运算符时,建议使用print语句替代echo语句.PHP编程 注意下列一串语句的理解:PHP编程 $str = $_GET['abc'] ? 'wangjinbo' : 'wjb'; 这里不能理解为:当$str等于$_GET['abc']? 时,赋值为 'wangjinbo'? 否则赋值为 'wjb';因为一:判断相等应该用==;因原二:三元算符的语法是如上所示:(expr1) ? (expr2) : (expr3),显然上面的二元,三元'wangjinbo'或'wjb'不能单独构成一个有意义的表达式;PHP编程 正确理解是:当$_GET['abc']为空(也便是否,PHP中 '',null,undifine,都等效布尔值false)时,将$str赋值为'wangjinbo',否则赋值为'wjb';PHP编程 以上所述便是本文的全部内容了,希望大家能够喜欢.PHP编程 欢迎参与《PHP实例:php三元运算符知识汇总》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |