萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> php 邏輯運算符

php 邏輯運算符

php教程 邏輯運算符
         例子                 名稱                  結果
  $a and $b   And(邏輯與)    TRUE,如果 $a 與 $b 都為 TRUE。
  $a or $b   Or(邏輯或)     TRUE,如果 $a 或 $b 任一為 TRUE。
  $a xor $b   Xor(邏輯異或)  TRUE,如果 $a 或 $b 任一為 TRUE,但不同時是。
  ! $a             Not(邏輯非)        TRUE,  如果 $a 不為 TRUE。
  $a && $b   And(邏輯與)   TRUE,如果 $a 與 $b 都為 TRUE。
  $a || $b   Or(邏輯或)     TRUE,如果 $a 或 $b 任一為 TRUE。

<?php
$a=true;
$b=false;

echo "And(邏輯與)";     //TRUE,如果 $a 與 $b 都為 TRUE
echo  $a and $b;   //返回 空  false;

echo "Or(邏輯或)";      //TRUE,如果 $a 與 $b 都為 TRUE
echo  $a or  $b;   //返回 1  TRUE;

echo "Xor(邏輯異或)";   //TRUE,如果 $a 或 $b 任一為 TRUE,但不同時是
echo  $a xor  $b;        //返回 1  TRUE;

echo "Not(邏輯非)";    //TRUE,  如果 $a 不為 TRUE
echo  !$a;               //返回 空  false;

echo "And(邏輯與)";      //TRUE,如果 $a 與 $b 都為 TRUE
echo  $a &&  $b;          //返回 空  false;

echo "Or(邏輯或)";       //TRUE,如果 $a 或 $b 任一為 TRUE
echo  $a ||  $b;           //返回 1  TRUE;
?>

<?php

// 下面的 foo() 不會被調用,因為它們被運算符“短路”了。
$a = (false && foo());
$b = (true  || foo());
$c = (false and foo());
$d = (true  or  foo());

// "||" 的優先級比 "or" 高
$e = false || true; // $e 被賦值為 (false || true),結果為 true
$f = false or true; // $f 被賦值為 false [Altair注:"=" 的優先級比 "or" 高]
var_dump($e, $f);

// "&&" 的優先級比 "and" 高
$g = true && false; // $g 被賦值為 (true && false),結果為 false
$h = true and false; // $h 被賦值為 true [Altair注:"=" 的優先級比 "and" 高]
var_dump($g, $h);
?>
以上例程的輸出類似於:

bool(true)
bool(false)
bool(false)
bool(true)

copyright © 萬盛學電腦網 all rights reserved