【发布时间】:2011-09-10 08:11:30
【问题描述】:
我想根据条件更改分配的变量,我似乎可以让它工作。
$condition = false;
($condition !== false ? $array[1][$condition] : $array[1]) = 'Test';
在本例中,如果 $condition 不为假,我想将字符串“Test”分配给 $array[1][$condition]。否则,将其分配给 $array[1]
我可以像这样轻松地做到这一点:
if ($condition !== false) {
$array[1][$condition] = 'Test'; }
else {
$array[1] = 'Test'; }
但是由于代码的性质,这可能会变得非常混乱,这就是为什么我希望它是一个内联条件语句。
感谢您的帮助!
【问题讨论】:
-
使用完整的 if 语句。更好,特别是因为三元运算符在 PHP 中有点损坏。
-
!== false是不必要的...if ($condition) {是您所需要的。由于您没有有条件地更新一个变量,? :语法将无法正常工作。 -
法斯科,谢谢。我知道 !== 是不必要的,但我一直使用它,因为它更快更容易阅读正在发生的事情。 ;)
标签: php variables conditional