다른 함수랑 쓰다보니 자꾸 헛갈린다.
strpos (문자열, 찾을문자열)
stripos (문자열, 찾을문자열)
이다. 순서가 종종 헛갈린다. 앞에 문자열이 긴 문자열이고, 뒤에 들어갈 것이 찾을 문자열 이다.
'i'm korean' 에서 'korea' 를 찾으려면
strpos('i'm korean','korea') 가 되어야 한다는 말.
그리고 사용하는 방법은
if(stripos($string,$find)===false) return false;
else return true;
이런식으로 사용하면 된다.
strpos 와 stripos 의 차이점은, stripos 는 대소문자 구분없이 찾는 다는 뜻이다.
strpos 의 정확한 사용법은, 문자열의 위치를 탐색하는 것인데.
찾는 문자열이 있을 경우에는, 숫자가 리턴이 되든 아무값이 리턴이 안되든 한다. (즉, 환경에 따라 애매하다)
확실한 것은 없을 때에 false 타입을 리턴한다는 것이기 때문에, false 로 구분을 해주자.
주의할 점은 === 세개를 써야한다는 점이다. equals 를 3개 표시한다는 것은, 값과 타입까지 동일한지를 확인한다는 뜻이다.
# api 주소
http://www.php.net/manual/en/function.stripos.php
를 들어가면 된다. 여기서 보면 $needle 이 두번째 인 것을 확인할 수 있다. 보통 needle 이라는 것은 바늘이나, 어떠한 부분이나 지점 을 뜻하는 것으로 보인다. compass 같은 느낌? 뭐 영어는 잘모르니까, 대충 찾으려는 문자열을 needle 로 표현한다고 기억해두면 좋다.
# 헛갈리는 이유
참고로, 헛갈리게 되는 이유는, 종종 preg_match 를 쓰게 되는데, 이 녀석이 순서가 반대이기 때문이다...참고로 알아두면 좋다.
http://php.net/manual/en/function.preg-match.php
'개발 > PHP' 카테고리의 다른 글
[PHP] 클라우드 플레어 유저 아이피 HTTP_CF_CONNECTING_IP (1) | 2017.02.18 |
---|---|
[PHP][mysql] inet_aton('::1') 에러 (0) | 2017.02.11 |
[코드이그나이터 Codeigniter] Codeigniter 로 알아본 redirect location refresh 의 차이 (0) | 2017.01.19 |
[PHP] PDO BindValue 와 BindParam 의 차이 (0) | 2016.02.09 |
[codeigniter] xss_clean (0) | 2015.10.04 |
[이클립스]cannot create linked resource '/.org.eclipse.dltk.core.external.folders/.link1'. the parent resource is not accessible. (0) | 2015.07.17 |
[PHP][이클립스] 이클립스에서 class code assist 가 안 될 때 (0) | 2015.07.16 |
[PHP] 사진이 회전되서 올라갈 경우. (exif_read_data 모듈 사용) (0) | 2014.06.11 |