if($num >= "false"){ 이런 문법(?)이 있나요?
제가 array_search로 배열에 키값을 빼와서 뿌려주는데
array_search 얘가 결과가 없으면 false 를 뱉고 첫번째 배열값이면 0 을 뱉어줍니다.
그래서 false와 0 을 구분하려고 if문을 썼는데 구분되지가 않아서
찾아보니까 https://stackoverflow.com/questions/15934392/php-array-search-0-index
이런게 있어서 !==를 해봐도 안되더라구요 ㅠㅠ
그래서 실수로 if($num >= "false"){ 이렇게 해서 빌드를 했는데 갑자기 되는겁니다;;
그래서 너무 신기해서 구글링해도 관련 내용을 찾을 수가 없는데; 혹시 아시는 분이 계신가해서 올려보아요.
|
댓글을 작성하시려면 로그인이 필요합니다.
로그인
댓글 4개
$num === false
이렇게 하셔야 합니다.
$num 변수값과 "false"라는 문자열을 비교한 것입니다
문자열의 순번상 f를 먼저 비교하고 a l s e
를 순서대로 시스템의 문자열코드값들을 비교해서 더크면 일테니
num의 값이 숫자나 false라면
늘 거짓이겠죠
if(!is_numeric($num)) 처럼 해도 될 거 같기도 하네요. ㅎ
본문에 링크있는 곳에서 !== 로 구분이 된다고해서 써봤었는데 안되더라구요;;
테스트 해봤는데 if($num >= "false"){ 일때 $num 이 숫자면 무조건 true고
false나 문자열이면 false로 나옵니다 ㅎㅎ;
그리고 바보천사님이 써주신 is_numeric을 쓰니까 잘됩니다 ㅎㅎ 이걸로 바꿔야겠습니다 ㄷㄷ