웹마스터 팁

ip주소를 정수로 변환해서 DB에 저장하면 어떨까하고 만들어본 함수...


ip2int : ip를 정수로 변환

int2ip : ip2int의 결과로 나온수를 ip로 저장...


만일 IP가 255.255.255.255면 DB에  저장하려면,
char(15)의 칼럼이 필요합니다.
만일 정수로 변환하면 4바이트인 int타입의 칼럼에 저장할수가;;

변환할때는 귀찮아서 비트연산으로 쉬프트~ 쉬프트~
참고로 php는 unsigned가 지원되지 않아서(-_-;)
128.???.???.??? 이상의 ip는 음수로 값이 나옵니다
(ex : 255.001.001.001, 128.111.111.111)
(다시 ip로 변환에는 문제 없습니다.)


        function ip2int($ip){

                sscanf($ip, "%d.%d.%d.%d", $a, $b, $c, $d);

                $int = 0;

                $int += ($a << 24);
                $int += ($b << 16);
                $int += ($c << 8);
                $int += $d;

                return $int;
        }


        function int2ip($int){

                $ip = '';

                $temp .= ($int >> 24);

                if(($int >> 24) < 0) $temp += 256;

                $ip .= $temp.'.';
                $ip .= (($int & (0x00FF0000)) >> 16);
                $ip .= '.';
                $ip .= (($int & (0x0000FF00)) >> 8);
                $ip .= '.';
                $ip .= ($int & (0x000000FF));

                return $ip;
        }
제목 글쓴이 날짜
개판 오분전 라인 그래프 [4] 미친개 2004.12.01
실명 진위여부 확인 [10] piasol 2004.12.01
나만의 미니홈 만들기 ㅡ write.php 파일과 write_ok [5] 예뜨락 2004.11.30
나만의 미니홈 만들기 ㅡ view.php 파일과 제목링크 [9] file 예뜨락 2004.11.27
나만의 미니홈 만들기 ㅡ list.php , 디비 테이블 생성 [6] file 예뜨락 2004.11.26
나만의 미니홈 만들기 ㅡ 게시판 list.php 파일의 모양새 [6] 예뜨락 2004.11.23
나만의 미니홈 만들기 ㅡ 게시판의 디자인 file 예뜨락 2004.11.22
나만의 미니홈 만들기 ㅡ 미니홈 생성 페이지 [3] file 예뜨락 2004.11.20
나만의 미니홈 만들기 ㅡ 기초적인 관리 페이지 [3] file 예뜨락 2004.11.20
나만의 미니홈 만들기 ㅡ 메인 기초 설계3 .레이아웃 [2] file 예뜨락 2004.11.19
나만의 미니홈 만들기 ㅡ 메인 기초 설계2 .레이아웃 예뜨락 2004.11.18
나만의 미니홈 만들기 ㅡ 글쓰기에 앞서... [1] 예뜨락 2004.11.17
[타키의 초보강좌]PHP 기초 강좌 제 2탄[mysql로 들어가보자.] [2] 타키 2004.10.24
소수[솟수] 쉽게 구하기[에라토스테네스의 해 알고리즘사용] , 경우의 수 구하기 [5] 타키 2004.10.23
[타키의 초보강좌]PHP 기초 강좌 제 1탄[패스워드 인증] [8] 타키 2004.10.23
www자동 붙히기 [8] 미오유 2004.10.22
IP to 정수변환(;) [4] 플로렐라 2004.10.21
한글자르는 문제 PHP차원에서 해결된 건가? [5] 겜방 2004.10.20
MySQL의 패턴 매칭 맛보기 [2] 손상모 2004.10.19
그래프 만들어주는 소스 [10] 미친개 2004.10.15