티스토리 뷰
1
=== - 개념PHP에서 문자열을 비교할 때 쓰이는 연산입니다.
보통은 ==을 써서 비교를 하게 되는데 PHP에서는 ==을 썼을 때 문자와 문자사이에는 제대로 된 비교를 하게 되지만 숫자가 포함된 문자에서는 제대로 비교를 못하는 문제가 있습니다.
이에 숫자가 포함된 문자일 경우에는 ===을 이용할 것을 권장드립니다.
2
== - 문제점PHP
코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <?php $test1 ="키보드"; $test2 ="1kg"; if($test1=="키보드") { echo "같음"; }else{ echo ""; } echo "<br><br>"; if($test2==1) { echo "같음"; }else{ echo "다름"; } ?> |
결과
화면
코드
설명
위에서 보면 지금 연산자를 ==으로 비교 했을 때 $test1에 있는 키보드라는 문자열은 키보드라는 문자열과 비교를 했기 때문에 같다라는 결과가 맞습니다.
그러나 두번째에 있는 1kg이라는 문자열을 1이라는 숫자와 비교했을 때 결과는 다름이 나와야 하는데 위와 같이 같음이라는 결과를 보여주고 있습니다.
이러한 이유 때문에 ===을 써줘야 올바른 결과를 가져올 수 있습니다.
3
=== - 예제PHP
코드
1 2 3 4 5 6 7 8 9 10 11 | <?php $test2 ="1kg"; if($test2===1) { echo "같음"; }else{ echo "다름"; } ?> |
결과
화면
코드
설명
지금 보는 것처럼 ==이 아닌 ===을 이용했을 경우에 숫자가 포함된 문자열을 비교한다 할지라도 제대로 된 결과가 보임을 알 수 있습니다.
==을 이용하다가 혹시나 결과가 이상하게 나오거나 다르게 나온다고 하면 =을 하나 더 붙여서 === 연산자를 이용해 보시기 바랍니다.
'[개발]프로그래밍 > php' 카테고리의 다른 글
[php] strcmp - 숫자를 자동으로 문자열로 변환 후 비교 (0) | 2019.12.17 |
---|---|
[php] (string) - 숫자를 문자열로 형 변환 (0) | 2019.12.17 |
[php] urldecode - URL 디코딩 (0) | 2019.12.13 |
[php] urlencode - URL 인코딩 (0) | 2019.12.12 |
[php] strip_tags - HTML 태그 제거 (0) | 2019.12.12 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday