使用?:
条件运算符与||
逻辑OR
之间存在何种差异。
我发现我的代码适用于:
$screenpixelratio = !empty($_COOKIE['screenpixelratio']) || $_COOKIE['screenpixelratio'] || $fallback_pixelratio;
但不是:
$screenpixelratio = !empty($_COOKIE['screenpixelratio']) ? $_COOKIE['screenpixelratio'] : $fallback_pixelratio;
有人可以解释为什么它可以与一个合作,而不是另一个。
答案 0 :(得分:18)
第一个(conditional or)说...
this or this or this
另一个(ternary operation)说
if this then this otherwise that
答案 1 :(得分:8)
||
二元运算符是处理两个参数的运算符
正如它所说的那样它将首先检查它是否真实,而不是进一步检查否则进一步检查
?:
三元运算符是一个带三个参数的运算符。参数和结果可以是不同的类型。
Expression1 ? Expression2 : Expression3;