【发布时间】:2013-12-13 18:16:54
【问题描述】:
我不确定我所做的是否根本上是错误的,或者我是否刚刚度过了漫长的一天并且遗漏了一些明显的东西......
我正在像这样动态设置数组值:
$criteria = array(
'is_blue' => get_color($color_1) == ('Dark Blue' OR 'Light Blue') ? TRUE : FALSE,
'is_red' => get_color($color_2) == ('Dark Red' OR 'Light Red') ? TRUE : FALSE
);
当我尝试以下行时,它会自行运行:
echo get_color($color_1);
我收到Dark Green。所以你会期望它在$criteria['is_blue'] 中评估为FALSE。
但是 - $criteria['is_blue'] 是 TRUE。
这是为什么?我误解了三元运算符吗?
谢谢!
【问题讨论】:
标签: php ternary-operator