웹프로그래밍

Global It Leader!!


MySql


 
 

주소 뽑아내기 소스 - phpschool

페이지 정보

작성자 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 댓글 0건 조회 4,085회 작성일 12-08-10 15:17

본문


        function convert($name, $depth)
        {


                $depth1 = array("서울특별시" => array("서울시", "서울"),
                                "경기도" => array("경기"),
                                "충청북도" => array("충북"),
                                "충청남도" => array("충남"),
                                "전라북도" => array("전북"),
                                "전라남도" => array("전남"),
                                "경상남도" => array("경남"),
                                "경상북도" => array("경북"),
                                "제주도" => array("제주"),
                                "제주특별자치도" => array("제주"),
                                "강원도" => array("강원"),
                                "부산광역시" => array("부산", "부산시"),
                                "울산광역시" => array("울산", "울산시"),
                                "광주광역시" => array("광주", "광주시"),
                                "대구광역시" => array("대구", "대구시"),
                                "대전광역시" => array("대전", "대전시"),
                                "인천광역시" => array("인천", "인천시")
                                );

                $ret = false;

                if (strlen($name) < 5)
                {
                        return array($name);
                }

                if ($depth == 0)
                {
                        if (array_key_exists($name, $depth1))
                        {
                                $ret = $depth1[$name];
                        }
                }
/*
  case 0:      // 도, 시 break;
  case 1:      // 시, 구, 군 break;
  case 2:      // 동, 가, 읍, 면, 구 break;
  case 3:      // 리, 동 break;
*/
                else if ($depth == 1)
                {//시군+구
                        $len = strlen($name);
                        $letter = $name[$len-2] . $name[$len-1];
                        if ($letter == "시" || $letter == "군" || $letter == "구")
                        {
                                $ret = array(substr($name, 0, $len-2));
                        }
                }
                /*
                else if ($depth == 2)
                {//구
                        $len = strlen($name);
                        $letter = $name[$len-2] . $name[$len-1];
                        if ($letter == "구")
                        {
                                $ret = array(substr($name, 0, $len-2));
                        }
                }
                */
                else if ($depth == 2 || $depth == 3)
                {//읍면동 + 구
                        $t_name = ereg_replace("[1-9]가|[0-9].[0-9]가|[0-9](.*)[0-9]가", "", $name);
                        $len = strlen($t_name);
                        $letter = $t_name[$len-2] . $t_name[$len-1];

                        if ($letter == "구")
                        {
                                $ret = array(substr($name, 0, $len-2));
                        }
                        elseif ($letter == "읍" || $letter == "면")
                        {
                                $t_name = substr($name, 0, $len-2);
                                $ret = array($t_name);
                        }
                        else if ($letter == "동")
                        {
                                if ($t_name == "동본동") $ret = array("동본", "동본동");//예외
                                else if ($len < 5) $ret = array($t_name);
                                else
                                {
                                        $t_name = ereg_replace("[1-9]동|[1-9](.*)[0-9]동|[1-9].동|본동", "동", $t_name);
                                        $t_arr = explode(".", $t_name);
                                        $ret_arr = array();
                                        foreach ($t_arr as $key => $val)
                                        {
                                                $len = strlen($val);
                                                if ($len == 0) continue;
                                                if ($len > 2) $t_letter = $val[$len-2] . $val[$len-1];
                                                if ($len < 5)
                                                {
                                                        if ($t_letter == "동") array_push($ret_arr, $val);
                                                        else
                                                        {
                                                                array_push($ret_arr, $val);
                                                                array_push($ret_arr, $val . "동");
                                                        }
                                                }
                                                else
                                                {
                                                        array_push($ret_arr, substr($val, 0, $len-2));
                                                        array_push($ret_arr, $val);
                                                }
                                        }
                                        $ret = $ret_arr;
                                }
                        }
                        else
                        {
                                $ret = array($t_name);
                        }
                        //      echo implode("|||", $ret)  . "===" . $name . "\n";
                }
                else //if ($depth == 4)
                {//리

                        $len = strlen($t_name);
                        $letter = $t_name[$len-2] . $t_name[$len-1];
                        if ($letter == "동") {
                                if ($t_name == "동본동") $ret = array("동본", "동본동");//예외
                                else if ($len < 5) $ret = array($t_name);
                                else
                                {
                                        $t_name = ereg_replace("[1-9]동|[1-9](.*)[0-9]동|[1-9].동|본동", "동", $t_name);
                                        $t_arr = explode(".", $t_name);
                                        $ret_arr = array();
                                        foreach ($t_arr as $key => $val)
                                        {
                                                $len = strlen($val);
                                                if ($len == 0) continue;
                                                if ($len > 2) $t_letter = $val[$len-2] . $val[$len-1];
                                                if ($len < 5)
                                                {
                                                        if ($t_letter == "동") array_push($ret_arr, $val);
                                                        else
                                                        {
                                                                array_push($ret_arr, $val);
                                                                array_push($ret_arr, $val . "동");
                                                        }
                                                }
                                                else
                                                {
                                                        array_push($ret_arr, substr($val, 0, $len-2));
                                                        array_push($ret_arr, $val);
                                                }
                                        }
                                        $ret = $ret_arr;
                                }
                        }
                        else $ret = array($name);
                }

                return $ret;
        }

댓글목록

등록된 댓글이 없습니다.

전체 57
게시물 검색
MySql 목록
번호 제목 글쓴이 조회 날짜
37 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4066 12-31
36 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4207 12-18
35 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4003 12-18
34 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 3768 12-18
33 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 3749 11-10
32 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 3903 07-29
31 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4062 06-20
30 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4457 03-28
29 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4405 08-17
28 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4730 08-16
27 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4402 08-16
26 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 9917 05-07
열람중 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4086 08-10
24 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 5187 08-03
23 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4171 08-03
22 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4830 07-30
21 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4052 07-27
20 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4103 03-10
19 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4492 03-05
18 no_profile 오원장쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4157 03-05