Guest User

Untitled

a guest
Oct 26th, 2008
743
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.14 KB | None | 0 0
  1. <pre>
  2. <?php
  3. if(isset($_GET['location'])){
  4.   $location=trim($_GET['location']);
  5.   $arr=retcszarr($location);
  6.     echo "location=$location<hr>".print_r($arr,true);
  7. }
  8. function retcszarr($loc){
  9.   $usstatenames=array('ALABAMA','ALASKA','AMERICAN SAMOA','ARIZONA','ARKANSAS','CALIFORNIA','COLORADO','CONNECTICUT','DELAWARE','DISTRICT OF COLUMBIA','FEDERATED STATES OF MICRONESIA','FLORIDA','GEORGIA','GUAM','HAWAII','IDAHO','ILLINOIS','INDIANA','IOWA','KANSAS','KENTUCKY','LOUISIANA','MAINE','MARSHALL ISLANDS','MARYLAND','MASSACHUSETTS','MICHIGAN','MINNESOTA','MISSISSIPPI','MISSOURI','MONTANA','NEBRASKA','NEVADA','NEW HAMPSHIRE','NEW JERSEY','NEW MEXICO','NEW YORK','NORTH CAROLINA','NORTH DAKOTA','NORTHERN MARIANA ISLANDS','OHIO','OKLAHOMA','OREGON','PALAU','PENNSYLVANIA','PUERTO RICO','RHODE ISLAND','SOUTH CAROLINA','SOUTH DAKOTA','TENNESSEE','TEXAS','UTAH','VERMONT','VIRGIN ISLANDS','VIRGINIA','WASHINGTON','WEST VIRGINIA','WISCONSIN','WYOMING');
  10.   $usstateabbrs=array('AL','AK','AS','AZ','AR','CA','CO','CT','DE','DC','FM','FL','GA','GU','HI','ID','IL','IN','IA','KS','KY','LA','ME','MH','MD','MA','MI','MN','MS','MO','MT','NE','NV','NH','NJ','NM','NY','NC','ND','MP','OH','OK','OR','PW','PA','PR','RI','SC','SD','TN','TX','UT','VT','VI','VA','WA','WV','WI','WY');
  11.     if(strpos($loc,',')!==false){
  12.       $parts=array_map('trim',explode(',',$loc));
  13.         $location['city']=strtoupper($parts[0]);
  14.       preg_match('/([^ ]*)(?: +([^ ]+))?/',$parts[1],$statezip);
  15.       if(isset($statezip[1])){
  16.         $location['state']=strtoupper($statezip[1]);
  17.       }
  18.     if(isset($statezip[2])){
  19.         $location['zip']=$statezip[2];
  20.       }
  21.     } else {
  22.         $parts=array_map('trim',explode(' ',$loc));
  23.       while(count($parts)>0){
  24.             $part=strtoupper(array_pop($parts));
  25.             if(in_array($part,$usstatenames)){
  26.             $location['state']=$part;
  27.           } elseif (in_array($part,$usstateabbrs)){
  28.             $location['state']=$usstatenames[array_search($part,$usstateabbrs)];
  29.           } elseif (preg_match('/\d+(?:-\d+)?/',$part,$zip)){
  30.             $location['zip']=$zip[0];
  31.           } else {
  32.                 $location['city']=strtoupper(implode(' ',$parts)." $part");
  33.               break;
  34.             }
  35.       }
  36.   }
  37.     ksort($location);
  38.     return $location;
  39. }
  40. ?>
Advertisement
Add Comment
Please, Sign In to add comment