84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
嘗試在相同的 if 中加入&和or,但 or 條件不起作用
else if ($usuario = 12 & $banca <=3 or =>7){ echo "ok"; }
僅在$banca <=3時有效,但在$banca >=7時無效 怎麼了?
$banca <=3
$banca >=7
我嘗試檢查的範圍在 <=3 和 >=7 之間
您的程式碼存在一些問題。一種較簡單的一種和一種較複雜的一種:語法和運算子的優先順序。
首先,運算子=是用來賦值,而不是比較。因此,$usuario = 12的結果是12。接下來,您有一個位元運算子&,如果$banca > 3,則輸出0,否則12。最後,您取得該結果並檢查它是否為>= 7。換句話說:在不了解操作員的情況下使用它們不會為您帶來任何好處。請深入研究 php 語言。
=
$usuario = 12
12
&
$banca > 3
0
>= 7
儘管您的語法在 PHP 中有效,但運算子優先順序也會弄亂結果。查看 PHP 的運算子優先權。這就是短絨檢查和最佳實踐手冊將指示您添加括號以使您的標準清晰,而不是依賴於晦澀運算符優先級的原因之一。
現在,我們該如何解決這個問題?再次,請進一步研究 PHP 的運算子及其語法。有一些很好的課程,還有PHP 官方手冊。但是,不要讓您懸而未決,您的情況應該是這樣的:
if ($usuario === 12 && ($banca <= 3 || $banca >= 7)) { ... }
您的程式碼存在一些問題。一種較簡單的一種和一種較複雜的一種:語法和運算子的優先順序。
首先,運算子
=
是用來賦值,而不是比較。因此,$usuario = 12
的結果是12
。接下來,您有一個位元運算子&
,如果$banca > 3
,則輸出0
,否則12
。最後,您取得該結果並檢查它是否為>= 7
。換句話說:在不了解操作員的情況下使用它們不會為您帶來任何好處。請深入研究 php 語言。儘管您的語法在 PHP 中有效,但運算子優先順序也會弄亂結果。查看 PHP 的運算子優先權。這就是短絨檢查和最佳實踐手冊將指示您添加括號以使您的標準清晰,而不是依賴於晦澀運算符優先級的原因之一。
現在,我們該如何解決這個問題?再次,請進一步研究 PHP 的運算子及其語法。有一些很好的課程,還有PHP 官方手冊。但是,不要讓您懸而未決,您的情況應該是這樣的: