我正在查看是否可以用一個三元運算符設置多個變量。我谷歌了一下,但沒有拿出任何東西。我開始測試一些想法,發現了一些近似的東西 - 但也得到了一些奇怪的行爲;關於發生什麼事的任何想法?而且,是否可以在單個三元操作中設置多個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