strpos 사용법 문의 채택완료
</p>
<p>$val='1234';
if(strpos("'1234', '5678', '9011'", $val) == true) { echo '있다'; } else { echo '없다'; }</p>
<p>
결과: 있다
</p>
<p>$val='12';
if(strpos("'1234', '5678', '9011'", $val) == true) { echo '있다'; } else { echo '없다'; }</p>
<p>
결과: 있다
제 생각엔 $val='1234'; 일 경우는 '1234' 와 일치하니 "있다"고
$val='12'; 일 경우는 '1234' 와 일치하지 않으니 "없다"가 맞는게 아닌가 싶은데 있다로 나옵니다.
제가 원하는건 따옴표 안에 데이터 값이 일치하는걸 원했는데... 어떻게 해야하나요..
답변 4개
'1234', '5678', '9011'
이걸 모두 문자열로 인식하기 때문에 그렇습니다. $val 값이 '12 라도 저안에 똑같은 문자열이 포함되어 있기 때문에 있다고 표시될거에요.
작성자분께서 원하시는 결과값을 얻을려면
$array=array("1234", "5678" "9011");
if(in_array($val, $array)){echo "있다";}else{echo "없다"}
이런식으로 처리하셔야지 원하시는 작동방식일것 같습니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
strpos 는 앞뒤 어떤 글자가 있던지 없던지 포함만 되면 되는거라서 썽피리님 말씀 처럼 배열로 수정해서 사용을 하셔야 할거 같습니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
strpos를 쓰는게 아니였군요. 또 하나 배워갑니다. 감사합니다.