PHP IF ELSE简化/三元一次式的使用

编程10000问 2019-03-27

一般我们会这样写:

代码如下:

<? 
if($_GET['time']==null) 
{ 
$time = time(); 
} 
else 
{ 
$time = $_GET['time']; 
} 
echo $time; 
//如果GET有time这个值则带入变数time,如果没有就带现在time()时间 
?>

如果只单简单的判断,照上面这样写就太麻烦了,而且效能也不高!
可以改成使用三元一次式:

代码如下:

<? 
$time = ($_GET['time']==null) ? (time()) : ($_GET['time']); 
echo $time; 
?>

简洁许多!
大概解释一下三元一次式意思
如果第一个括号()内的判断句成立 就执行问号? 后第一个括号() 的内容,如果不成立则执行问号? 后第二个括号() 的内容

代码如下:

<? 
$a = 5; //定义变数a=5 
$b = 3; //定义变数b=5 
$c = ($a==$b) ? ("yes") : ("no"); 
//如果 a=b,c就=yes ; a不等于b,c就=no 
?>

还有一种简化

代码如下:

$bool = true; 
if($bool) 
{ 
setValueFun(); 
}

可以简化成

代码如下:

$bool && setValueFun();

相关推荐