3

オンライン チュートリアルで、次のコード スニペットを見たことがあります。

$this->data = $data ?: \Input::all();

これは標準の三項演算子ですか? $dataが に評価されるとどうなりtrueますか?

次のコードは、私が投稿したオリジナルと同じことをしますか?

$this->data = $data ? null : \Input::all();
4

1 に答える 1

8

三項演算子、のショートカットです

 $this->data = $data? $data : \Input::all();

http://php.net/manual/en/language.operators.comparison.phpから

PHP 5.3 以降、三項演算子の中間部分を省略することができます。

expr1 ?: expr3は、 expr1が TRUE と評価された場合はexpr1を返し、それ以外の場合はexpr3を返します。

于 2013-10-16T10:27:37.320 に答える