在在线教程中,我看到了以下代码片段:
$this->data = $data ?: \Input::all();
这是标准的三元运算符吗?当$data评估为true时会发生什么?
$this->data = $data ? null : \Input::all();
解决方法:
它是一个三元运算符,是捷径
$this->data = $data? $data : \Input::all();
从http://php.net/manual/en/language.operators.comparison.php起
Since PHP 5.3, it is possible to leave out the middle part of the ternary operator.
Expression expr1 ?: expr3 returns expr1 if expr1 evaluates to TRUE, and expr3 otherwise.