왜 1111111111 은 id로 쓸 수 없나요?
아무리 생각해봐도 모르겠습니다... id에 대한 조건을 만족시키는것 아닌가요?
#web
작성자 정보
답변
2
geeneoning
Dreamhack CTF S2 Ⅳ 참여
1111111111은 int로 바꿔도 1111111111 이니까요
그럼 당연히 id랑 비교하면 false 가 나오겠죠?
홍길동전
대표 업적 없음
전제 조건 : php 8 미만의 버전
문자열 형변환
$a = "v384920";
$b = "kw03mfdv";
$c = "a1293843298523";
print((int)$a); //출력결과 0
print((int)$b); //출력결과 0
print((int)$c); //출력결과 0
- 문자열을 (int) 로 형변환할 때, 문자열의 맨 앞자리가 문자 형식이라면 출력 결과는 항상 0
$a = "5v384920";
$b = "54321kw03mfdv";
$c = "0101kw03mfdv";
print((int)$a); //출력결과 5
print((int)$b); //출력결과 54321
print((int)$c); //출력결과 101
- 문자열을 (int) 로 형변환할 때, 문자열의 맨 앞자리가 숫자 형식이라면 숫자가 아닌 다른 형식이 오기 전까지의 숫자가 출력됨
$a = "5v384920";
$b = "54321kw03mfdv";
$c = "0101kw03mfdv";
if ($a == 5) //참
if ($b == 54321) //참
if ($c == 101) //참
- int 타입과 문자열 비교 연산 시, 문자열을 (int) 로 강제 형변환할 때와 동일한 방식으로 자동 형변환 됨
해결되셨길 바랍니다.