메뉴 건너뛰기

프로그램언어

조회 수 307 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

비교 연산자

예제 이름 결과
$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.

(출처 php메뉴얼 http://www.php.net/manual/kr/language.operators.comparison.php)
연산자 중에서 === 이라는 equal을 3번이나 쓴 연산자가 있길래, 찾아보다가 포스팅 해보게 되었다.
서로의 값이 같고, 자료형까지 같아야 true를 반환하는 연산자가 있을줄이야....

좀더 자세히 알고 싶다면 위의 출처 링크로 가보면 된다.
이 연산자를 알게 된 경위는 이렇다.
php 함수중에 strpos( "검색될문자열", "검색할문자") 라는 문자열 검색 함수가 있다.
이 함수는 찾은 문자의 위치를 반환 한다. 그리고 문자의 위치는 0부터이다..
그렇다. 만약 찾은 문자가 처음부터 나온다면 0이 반환되고

if( $position = strpos( "abc", "a" ) )
{
   echo "찾는 문자열은".($position+1)."번째에 있습니다. ";
}

라는 식으로 쓰게 되면, 0이 반환되어 계속 실패된 것과 같은 효과만 나오게 되어, 필자는 편법으로..

if( $position = strpos( "^"."abc", "a" ) )
{
   echo "찾는 문자열은 $position 번째에 있습니다. ";
}

이런식으로 찾는 문자열에 임의로 찾는 문자열과는 관계 없는 특수문자를 하나 맨 앞에 붙여 주곤 했다.( 이런식의 편법일 경우, 찾는 문자가 우연히 앞에 붙여둔 특문과 일치한다면, 결국 실패가 되버린다.. ) 하지만 === 연산자를 이용하면

if( ($position = strpos( "abc", "a" )) !== false )
{
   echo "찾는 문자열은".($position+1)."번째에 있습니다. ";
}

이런 식으로 결과가 0이라도 false와 구별해 주기 때문에 원하는 결과를 얻을수 있다.


List of Articles
번호 제목 날짜 조회 수
280 이미지 땡겨와서 출력하기 2018.09.28 5286
279 유용한 함수 모음 2014.02.27 21422
278 웹페이지 프린트 하기 html 수준 2014.03.26 19805
277 웹페이지 파싱 2023.01.12 225
276 웹에서 Excel 로 출력하기 2014.03.26 20356
275 웹서버조회 소스 2018.07.24 4543
274 오류 메시지 출력(alert) 및 페이지 이동(refresh) 관련 2017.03.06 18568
273 오늘 날짜 구하기 2019.01.08 1323
272 엔터의 표현 2014.02.27 19535
271 엑셀(*.xls) 화일을 PHP에서 읽기 2017.03.06 17471
270 어떤 스마트폰으로 접속했는지 알아내는 소스 , (안드로이드 아이폰 ) 2014.03.26 17716
269 애니메이션 gif 와 일반 gif 구분 하기 2019.01.16 1313
268 알파벳 순서대로 출력하기 ord(), chr() 2021.03.26 581
267 시간관련함수 2016.12.23 17328
266 세션 시작 / 세션 데이터 추가 / 세션 데이터 삭제 / 세션 종료하기 2017.03.07 19102
265 서브도메인 세션 공유 2021.03.26 537
264 생성된 파일생성날짜 업데이트 만들기 / filemtime 2019.01.16 1371
263 새창열 때 HTTP_REFERER 값넘기는 꽁수 2019.01.08 1451
262 상수, 마법상수, 모든 상수 보기 2021.03.26 236
261 사진이 회전되서 올라갈 경우 2020.05.25 771
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved