当前位置:编程学习 > php >>

三元运算符问号冒号表达式

问号冒号表达式


if (a > b)
   c = 1;
else
   c = 0;
看,没有花括号的代码,感觉多紧凑。不过,对于上面的代码,我们还可以继续简化,那就是使用 ? : 语句。
c = (a > b)? 1 : 0;
就一行话,多简捷!语句中的问号问的是什么?问的是 a 是否大于 b ? 如果是,则得到值1,否则,得到值0。
? : 表达式格式语法:
(条件) ? 值1 : 值2
举一例子:
设有int变量 a,b,二者均已初始化。请得到二者中的较大值。
方法是:
int c = (a  > b) ?  a : b;

是的,就这么简单,执行上面代码,c 将得到a


php三元运算符:?(问号)和:(冒号)使用方法[转]  

C语言里的语法,条件表达式e1?e2:e3,若e1为真(非0),则此表达式的值为e2的值;若为假,则表达式的值为e3
经常有刚接触php的朋友问我,php中经常见到如下代码的语句,问号和冒号是什么意思,这个语句是什么意思?

例如:

$shenhe=$val['available'] ? "已审核" : "未审核"

其实,这就是一个if语句的缩写,C语言里的语法,条件表达式e1?e2:e3,若e1为真(非0),则此表达式的值为e2的值;若为假,则表达式的值为e3。等同于

$e="";
if(e1){
 $e=e2;
}
else{
 $e=e3;
}

 

其中e1、e2、e3都是表达式。


CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,