사업자 !=
및 PHP에서 <>
의 차이점은 무엇입니까? 변수가 NULL
과 같지 않은지 확인해야합니다. 어느 연산자를 사용해야합니까?
차이
답변
두 연산자의 차이점은 없습니다.
하지만, 대신 신원 연산자===
을 사용할 수 있습니다
NULL
를 확인하려면 :
는
$a = 0;
if ($a == NULL) {
// executes
}
위의 조건은 실제로 true로 평가합니다. 변수 정말 경우 신원 연산자로, 그러나, 당신은 확인할 수NULL
(또는도 : TRUE
또는 FALSE
또는 아무것도, 당신은 실제 값을 확인해야하고 하지 이전 유형의 결과 변환). 희망은 그 말이 맞습니다.
편집 : 실제로 질문에 대답하고 변수가 널 아닌지 확인하기 위해, 내 폭언를 참조하려면, 당신은 신원 운영자의 대응을 사용할 수 있습니다 !==
(또는 다른 답변과 의견에 제안 is_null()
).
<>와! = 사이에는 우선 순위 차이가 약간 있지만, 가장 복잡한 조건 인 –
첫 번째 구글 결과 :
그것은 말한다 :
이$a != $b Not equal TRUE if $a is not equal to $b after type juggling.
$a <> $b Not equal TRUE if $a is not equal to $b after type juggling.
또한 처리 방법 널 설명합니다 해당 페이지의 테이블있다
+1에 영향을 미치지는 않습니다. 항상 모두 RTFM해야합니다. – Toto
는 PHP docs 참조하십시오. 또한 type comparisons에 대한 설명은이 페이지를 참조하십시오.
==' (Equal):
if("22" == 22) echo "YES";
else echo "NO";
위의 코드는 "예"라고 인쇄됩니다. 그 이유는 피연산자의 값이 동일하기 때문입니다. 반면 아래의 예제 코드를 실행하는 경우 :
결과는 "NO"입니다. 그 이유는 두 피연산자의 값이 같지만 유형이 다르더라도 "22"(따옴표 포함)는 문자열이고 22 (따옴표 제외)는 정수입니다. 우리는 다음에 위의 코드를 변경한다면 :
if("22" === (string)22) echo "YES";
else echo "NO";
더 < 없다> 등의 연산자는 이러한 <입니다 = 또는 정수 변수> = 사용되는.
사용한다 null 값을 확인하려면 :
if($a == 'null') or if (isset($a))
모두 유사한 작동합니다.
당신은 대답을 읽을 수 있습니다 : http://stackoverflow.com/questions/3956362/whats-the-difference-between-and- 만약 무언가가 NULL인지 확인하려면'is_null()'을 사용할 수 있습니다. – Quasdunk