웹마스터 팁

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;
        }
제목 글쓴이 날짜
서브디렉토리,파일까지 모두 삭제하는 함수. [5] Lepas 2004.08.24
Echo 여러번호출? 할때 깜빡임 없애기 [5] file 신희돈 2004.09.03
썸네일 생성시 unsharp mask활용할수 있는 팁..소스 file 앗싸~~ 곰세마리 2004.09.06
랜덤으로 파일 가져와서 재생하고, 끝나면 다른 랜덤파일 또 재생하기.. 겜방 2004.09.10
-긴급소스 수정본- winamp 방송정보 알아내기 file 이승원 2004.09.11
날씨별로 다양한 말이나 음악 보여주기[수정] [4] 로크 2004.09.13
crontab 실제 사용 예제, 온라인 웹 게임 운영하기 (팁 + 오픈 소스 게임 소개 ^^;) [1] 박용구 2004.09.14
'' -> ""로 만들기(?) [2] 플로렐라 2004.09.17
trim 과 addslashes를 일괄처리하는 함수 [7] BigStone 2004.10.02
echo 안에 더블쿼테이션을 사용하기 [15] 토토루 2004.10.05
윈도우XP 서비스팩2 사용자인지 아닌지 판별하기 [22] file 天高馬肥[쉬드] 2004.10.09
그래프 만들어주는 소스 [10] 미친개 2004.10.15
MySQL의 패턴 매칭 맛보기 [2] 손상모 2004.10.19
한글자르는 문제 PHP차원에서 해결된 건가? [5] 겜방 2004.10.20
IP to 정수변환(;) [4] 플로렐라 2004.10.21
www자동 붙히기 [8] 미오유 2004.10.22
[타키의 초보강좌]PHP 기초 강좌 제 1탄[패스워드 인증] [8] 타키 2004.10.23
소수[솟수] 쉽게 구하기[에라토스테네스의 해 알고리즘사용] , 경우의 수 구하기 [5] 타키 2004.10.23
[타키의 초보강좌]PHP 기초 강좌 제 2탄[mysql로 들어가보자.] [2] 타키 2004.10.24
나만의 미니홈 만들기 ㅡ 글쓰기에 앞서... [1] 예뜨락 2004.11.17