예제 | 이름 | 결과 |
---|---|---|
$a and $b | And | $a와 $b가 모두 TRUE이면 TRUE. |
$a or $b | Or | $a나 $b가 TRUE이면 TRUE. |
$a xor $b | Xor | $a와 $b중 하나만 TRUE일 때만 TRUE. |
! $a | Not | $a가 TRUE가 아니면 TRUE. |
$a && $b | And | $a와 $b가 모두 TRUE이면 TRUE. |
$a || $b | Or | $a나 $b가 TRUE이면 TRUE. |
"and"와 "or" 연산자가 두 종류가 있는 것은, 다른 우선권을 가지기 때문입니다. (연산자 우선권 참고)
Example #1 논리 연산자 설명
<?php
// foo() will never get called as those operators are short-circuit
$a = (false && foo());
$b = (true || foo());
$c = (false and foo());
$d = (true or foo());
// "||" has a greater precedence than "or"
$e = false || true; // $e will be assigned to (false || true) which is true
$f = false or true; // $f will be assigned to false
var_dump($e, $f);
// "&&" has a greater precedence than "and"
$g = true && false; // $g will be assigned to (true && false) which is false
$h = true and false; // $h will be assigned to true
var_dump($g, $h);
?>
위 예제의 출력 예시:
bool(true) bool(false) bool(false) bool(true)