php에는 == 연산자와 === 연산자가 존재합니다.
차이점은 == 연산자는 값의 일치 여부를 확인하며, === 연산자는 값의 일치 여부와 자료형의 일치 여부를 검사합니다.

==의 경우 값의 일치 여부만 검사하기 때문에, 자료형이 다를 경우 대충 변환해 보고 맞으면 true를 반환하게 됩니다.
여러 경우를 [그림 1]의 표에서 확인할 수 있습니다.

===의 경우 값의 일치 여부와 자료형 일치 여부를 검사합니다. 두 가지 모두 만족해야 true를 반환하므로, 자료형이 다르면 다르다고 취급됩니다.
엄격한 검사가 필요할 때 ===를 사용하지 않으면, 의도하지 않은 취약점이 발생할 수 있습니다.
참고
– https://www.php.net/manual/en/language.operators.comparison.php
– https://www.php.net/manual/en/types.comparisons.php
'Programming Language > PHP' 카테고리의 다른 글
[PHP] ereg(), eregi() 문자열 검사 함수 (0) | 2022.11.01 |
---|---|
[PHP] str_replace() 문자열 치환 함수 사용법과 우회 방법 (0) | 2022.10.25 |
댓글