首頁 > 後端開發 > PHP問題 > php邏輯運算子之間有什麼區別

php邏輯運算子之間有什麼區別

WBOY
發布: 2023-03-15 16:44:01
原創
2675 人瀏覽過

區別:1、and和「&&」運算子都用來表示邏輯與,and的優先順序較低,「&&」的優先權較高;2、or和「||」運算符都用於表示邏輯或,or的優先權較低,「||」的優先權較高;3、「$」運算子用來表示邏輯非;4、xor運算子用來表示邏輯異或。

php邏輯運算子之間有什麼區別

本文操作環境:Windows10系統、PHP7.1版、Dell G3電腦。

php邏輯運算子之間有什麼區別

php 邏輯運算子

php邏輯運算子之間有什麼區別

一直認為PHP中「or」和「| |」是可以劃等號的,其實不然,它們存在著一個優先順序的差別。下面透過一個例子說明它們的差異:

<?php
$a = false || true; //&#39;||&#39;的优先级大于&#39;=&#39;,先执行 false || true,然后赋值$a
$b = false or true; // &#39;or&#39;的优先级小于&#39;=&#39;,先将false赋值给$b
var_dump($a).PHP_EOL;//true
var_dump($b);//false
?>
登入後複製

執行後,$a為true,而$b為false。這是因為“||”的優先權大於“=”,先執行 false || true,然後將執行後的結果true賦值給$a。而“or”的優先權小於“=”,先將false賦值給$b,因此$b就為false

PHP中的邏輯“與”運算有兩種形式:AND 和 &&,同樣「或」運算也有OR和||兩種形式。

如果是單獨兩個表達式參加的運算,兩個形式的結果完全相同,例如 $a AND $b和$a && $b沒有任何差異。同樣的$a OR $b和$a || $b也完全一樣。

但兩種形式的邏輯運算子優先順序不同,這四個符號的優先允許從高到低是:&&、||、AND、OR。特別注意,這句話要仔細理解。範例:

$a || $b AND $c || $d
登入後複製

相當於:

($a || $b) AND ($c || $d)
登入後複製

推薦學習:《PHP影片教學

以上是php邏輯運算子之間有什麼區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板