2012-01-13 91 views

回答

6

=具有比and更高的優先級。因此$c = $a and $b;($c = $a) and $b;相同,$ a的值被分配給$ c。這與&&不同,它具有比=更高的優先級,所以$c = $a && $b評估爲$c = ($a && $b);

+0

我剛纔發現我自己。這似乎很奇怪,但。它在許多其他語言中是否像這樣?我不記得它在其他地方。 – Jakob 2012-01-13 23:49:50

+0

我不記得在其他語言中看到它。它可以用作''c = $ a和$ b'中的短路,$ b僅在$ c = $ a爲真時才計算。我個人試圖避免這樣的東西,但它很常見'$ res = mysql_query(...)或die(mysql_error)' – a1ex07 2012-01-13 23:57:41

1
$c = ($a && $b); // will fix the problem