我正在查看是否可以用一个三元运算符设置多个变量。我谷歌了一下,但没有拿出任何东西。我开始测试一些想法,发现了一些近似的东西 - 但也得到了一些奇怪的行为;关于发生什么事的任何想法?而且,是否可以在单个三元操作中设置多个var
?如果是这样,是否有适当的方法来做到这一点?是否可以使用一个三元运算符设置多个变量?
$i=9;
($i==9)?($w=3|$r=2):($w=7|$r=1);
echo 'w= '.$w.' r= '.$r;//w= 3 r= 2
$i=9;
($i==9)?($w=4|$r=2):($w=7|$r=1);
echo 'w= '.$w.' r= '.$r;//w= 6 r= 2
$i=9;
($i==9)?($w=3|$r=7):($w=7|$r=1);
echo 'w= '.$w.' r= '.$r;//w= 7 r= 7
$i=444;
($i==9)?($w=4|$r=2):($w=7|$r=1);
echo 'w= '.$w.' r= '.$r;//w= 7 r= 1
$i=444;
($i==9)?($w=4|$r=2):($w=1|$r=1);
echo 'w= '.$w.' r= '.$r;//w= 1 r= 1
谢谢...
编辑:
我做了一点更多的测试,发现这个工作正常:
($i==9)?($w=4 AND $r=7):($w=7 AND $r=1);
然而
,我不知道这是否正确。我很好奇第一个例子中发生了什么。
+1感谢优秀的解释。我读到,单管是一个按位运算符,但不知道它做了什么。有趣的东西。再次感谢! – stormdrain 2010-07-15 21:37:02
+1可以很好地解释问题。 – Mike 2010-07-15 21:52:40