作者rickysu (Ricky)
看板PHP
標題[教學] OR || AND && 不能亂用
時間Thu Jul 18 10:46:53 2013
這篇算是亂入文 XD
回歸正題,在前幾篇的討論中有人使用到 And 這個 operator。
然而在 php 中 And 跟 && 是不同的東西,別混用了。
舉個範例
<?php
$result1 = true AND false;
$result2 = true && false;
echo "refult1 => $result1 \n";
echo "refult2 => $result2 \n"
雖然在 PHP 的 spec 定義中,這兩個都是 Logical And,但是結果卻是完全不同。
最主要的原因在於 AND, OR, XOR 這幾個運算子的優先權小於 = ,
會先執行左邊的運算。相當於 ($result1 = true) AND false;
然而 &&, || 的優先權是高於 = 的,因此上面的執行結果相當於
$result2 = (true && false);
所以別亂用 AND 跟 &&嘍
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.130.136.115
推 liaosankai:實用觀念 07/18 10:57
推 twsphere: 實用文 07/18 11:29
推 tails32100:推推 可是我都習慣用&& Orz... 比較想知道效能的影響 07/18 11:36
推 tkdmaf:我忘記以前是誰在講or die()時就有提過這件事。 07/18 11:50
推 a60301:推實用 07/18 18:10
→ gname:習慣性用上括號就不用怕了...當作在寫數學嘛...XD 07/19 22:00
推 jackcomtw:原來有 AND 可以用 ....筆記... 09/10 14:14