echo $a ? $a : 0;
但是上面的写法要写两个$a,还不是太完美 从
PHP
5.3以后提供了更加简洁的写法:
表达式 (expr1) ? (expr2) : (expr3) 在 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。
自
PHP
5
完整的写法就不说了,这里说
省略
第二个表达式的写法: $a = $b ? : $c; 需要明确的是:当第一位的结果符合条件时,第二位是第一位的值,条件是指:bool true或 其他非空值. 如: $a = 2;
$b = $a ? : 3;
$b = 2,第一位表达式的值是$a, (结果$a)符合条件,所以第二位是第一位的值(结果$a)
三元
运算符“?:” 又名条件运算符
表达式(expr1) ? (expr2) : (expr3)在expr1求值为TRUE时的值为expr2,在expr1求值为FALSE时的值为expr3。
自
PHP
5.3 起,可以
省略
三元
运算符
中间
那部分。表达式expr1 ?: expr3在expr1求值为TRUE时返回expr1,否则返...
最近在看GPIO驱动框架中关于label属性的show方法函数时遇到了三目运算符“?:”
省略
操作数的情况,因为不多见在此记录下,不多说直接贴代码:static ssize_t chip_label_show(struct device *dev,
struct device_attribute *attr, char *buf)
const stru
private static String replaceAction(String userName) {
String userNameAfterReplaced = "";
int nameLength = userName.length();
if(nameLength...
1.(expr1) ? (expr2) : (expr3):
表达式 (expr1) ? (expr2) : (expr3) 在 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。
$a = $a ? $a : 1;
2.(expr1) ? :(expr3) :这个是
php
5.3开始才有的功能
在 expr1 ...
* Author: Godbach
* Blog:http://blog.chinaunix.net/u/33048/index.html
* 本文欢迎自由转载,但请标明出处,并保证本文的完整性。
内核代码sch_fifo.c中函数fifo_init的代码如下:
static int fifo_init(struct Qdisc *sch, struct rtatt