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

时间:2022-08-28 16:19:36

一般我们会这样写: 

复制代码代码如下:


<? 
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();