解释这个PHP的简写

时间:2010-06-10 20:37:13

标签: php

  

可能重复:
  What is the PHP ? : operator called and what does it do?

我喜欢吃饭,但我不完全理解这段代码中发生了什么:

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

是否说$ 1或$ 2然后$ var等于fuction_one(),否则是function_two()?使用这种语法的目的是什么 - 速度?

4 个答案:

答案 0 :(得分:4)

如果$one为真,或$two为真,则调用function_one的结果会附加到$var。否则,调用function_two的结果会附加到$var

它基本上是简写:

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

答案 1 :(得分:3)

如果$varfunction_one()评估为真,

$one会自动附加$two返回的值,并附加function_two()的结果否则。

答案 2 :(得分:1)

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

您正在根据评估$var$one,if $two$one的if语句将$tow连接到其中一个函数的返回值如果已分配或返回true,则从function_one()返回的连接将被连接,否则从function_tow()返回的值为。

答案 3 :(得分:1)

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

使用function_one()或function_two()

的输出追加$ var

如果$ 1为真,则执行function_one(),然后执行function_two()