2010-06-10 49 views
0

可能重复:
What is the PHP ? : operator called and what does it do?解释这个PHP速记

我喂就像一个混日子,但我并不完全了解情况,在此代码:

$var .= ($one || $two) ? function_one($one, $another) : function_two($two, $another); 

这是否说如果$ one或$ two,那么$ var等于fuction_one(),否则function_two()?使用这种语法的目的是什么 - 速度?

+3

好醇”三元:http://stackoverflow.com/questions/1080247/what-is-the-php-operator-called-and-what-does-它做 – 2010-06-10 20:40:06

+1

这是封闭的,但关于它的用途 - 速度和更干净的代码,如下例所示:http://en.wikipedia.org/wiki/Conditional_operator#Usage – 2010-06-10 20:50:45

+0

感谢大家的压倒性反应! – buley 2010-06-10 20:56:22

回答

4

如果任$one是真实的,或$two是真实的,那么致电function_one的结果被附加到$var。否则,调用function_two的结果将附加到$var

它基本上简写:

if ($one || $two) { 
    $var .= function_one($one, $another); 
} else { 
    $var .= function_two($two, $another); 
} 
1

function_one()function_two()都返回一个值。

您串联$var到基于评估$one$two,如果$one$tow分配或返回true的从function_one()返回为级联否则从function_tow()返回的值是一个if语句这些函数之一的返回值。

3

$var将追加到自身的价值从function_one()如果$one$two评估为true的回报,并会的function_two()结果,否则追加。

1

$ var。=($ one || $ two)? function_one($ one,$ another):function_two($ two,$ another);与function_one的输出()或function_two()

如果$之一为真,则执行function_one(

追加$ VAR)其他执行function_two()