BLOG ARTICLE 비교 연산 | 1 ARTICLE FOUND

  1. 2014.01.28 [PHP] 비교 연산자

PHP 비교 연산자

 

 

비교 연산자는 이름 그대로 두 값을 비교하도록 합니다. 자료형 비교표에서 다양한 자료형 관련 비교의 예제를 확인해 볼 수 있습니다.

 

 

 

 비교 연산자

예제 이름 결과
$a == $b Equal $a와 $b가 같으면 TRUE.
$a === $b Identical $a와 $b가 같고, 같은 자료형이면 TRUE. (PHP 4에서 추가)
$a != $b Not equal $a가 $b와 같지 않으면 TRUE.
$a <> $b Not equal $a가 $b와 같지 않으면 TRUE.
$a !== $b Not identical $a가 $b와 같지 않거나, 같은 자료형이 아니면 TRUE. (PHP 4에서 추가)
$a < $b Less than $a가 $b보다 작으면 TRUE.
$a > $b Greater than $a가 $b보다 크면 TRUE.
$a <= $b Less than or equal to $a가 $b보다 작거나 같으면 TRUE.
$a >= $b Greater than or equal to $a가 $b보다 크거나 같으면 TRUE.

 

정수를 문자열과 비교하면, 문자열이 수로 변환됩니다. 두개의 수 문자열을 비교하면, 정수로 비교됩니다. 이 규칙은 switch 구문에도 적용됩니다.

 

 

 

 

 true
var_dump("1" == "01"); // 1 == 1 -> true
var_dump("1" == "1e0"); // 1 == 1 -> true

switch ("a") {
case 0:
echo "0";
break;
case "a": // never reached because "a" is already matched with 0
echo "a";
break;
}
?>


 

다양한 자료형에 대해서, 비교는 다음 표에 따라 이루어집니다. (순서대로)

 

다양한 자료형 비교
연산수 1의 자료형 연산수 2의 자료형 결과
null이나 string string NULL을 ""로 변환, 수치나 어휘 비교
bool이나 null anything bool로 변환, FALSE < TRUE
object object 내장 클래스는 자신의 비교 함수를 정의할 수 있습니다. 다른 클래스는 비교할 수 없고, 같은 클래스는 배열과 같은 방식으로 프로퍼티를 비교합니다(PHP 4). PHP 5는 자체의 해석법을 가지고 있습니다.
string, resource, number string, resource, number 문자열과 자원을 수로 변환하여, 일반적인 수학
array array 적은 멤버를 가진 배열이 작고, 연산수 1의 키가 연산수 2에서 발견되지 않으면 배열을 비교할 수 없고, 그렇지 않으면 - 값대 값으로 비교(아래 예제를 참고)
array 모두 array가 항상 큽니다
object 모두 object가 항상 큽니다

 

 

Example #1 표준 배열 비교의 모사

 

 
 count($op2)) {
return 1; // $op1 > $op2
}
foreach ($op1 as $key => $val) {
if (!array_key_exists($key, $op2)) {
return null; // uncomparable
} elseif ($val < $op2[$key]) {
return -1;
} elseif ($val > $op2[$key]) {
return 1;
}
}
return 0; // $op1 == $op2
}
?>

 

 


 

AND