ZIPCodeWorld™ Utility PHP Component Sample Codes
 

Hexasoft Development Sdn. Bhd. (645996-K)

1-2-15 Mayang Mall Complex,
Jalan Mayang Pasir 1,
11950 Bandar Bayan Baru,
Penang, Malaysia.
URL: http://www.zipcodeworld.com

{ sales@zipcodeworld.com }

ZIPCodeWorld™ Utility PHP Component is a software development component which looks up the ZIPCodeWorld United States ZIP Code Database that is available in Basic, Premium and Gold Editions. It allows query by ZIP code, city name, alias city name, state code, phone area code, city type, county name, county FIPS, time zone, day light saving flag, latitude, longitude, etc. It also looks up the PostalCodeWorld Canada Postal Code Database which is available in Basic, Premium and Gold Editions and supports query by postal code, city name, province name, phone area code, timezone, daylight saving flag, latitude, longitude, population and much more.

ZIPCodeWorld™ is giving away free sample codes for the ZIPCodeWorld™ Utility PHP Component. You will need to run MySQL queries to fetch the data out of the database. We will guide you on how to create and import database in MySQL. We will also demonstrate to you how to call and query 3 functions which are the Get function, Distance function and Radius function using the ZIPCodeWorld™ United States Gold Edition database in PHP. If you have purchased the license key, you can use our query to upload the "license.key" file to your server.

Part 1: MySQL configuration
----------------------------

Step 1: Create and connect to 'ZIPCodeWorld' database
 mysql> CREATE DATABASE ZIPCodeWorld
 mysql> USE ZIPCodeWorld

Step 2: Create 'ZIPCODEWORLDUS' table
 mysql> CREATE TABLE ZIPCODEWORLDUS
 --> (
 --> ZIP_CODE VARCHAR(5),
 --> CITY VARCHAR(35),
 --> STATE VARCHAR(2),
 --> AREA_CODE VARCHAR(40),
 --> CITY_ALIAS_NAME VARCHAR(35),
 --> CITY_ALIAS_ABBR VARCHAR(13),
 --> CITY_TYPE VARCHAR(1),
 --> COUNTY_NAME VARCHAR(25),
 --> STATE_FIPS VARCHAR(2),
 --> COUNTY_FIPS VARCHAR(3),
 --> TIME_ZONE VARCHAR(2),
 --> DAY_LIGHT_SAVING VARCHAR(1),
 --> LATITUDE DOUBLE,
 --> LONGITUDE DOUBLE,
 --> ELEVATION DOUBLE,
 --> MSA2000 VARCHAR(4),
 --> PMSA VARCHAR(4),
 --> CBSA VARCHAR(5),
 --> CBSA_DIV VARCHAR(5),
 --> CBSA_TITLE VARCHAR(128),
 --> PERSONS_PER_HOUSEHOLD DOUBLE,
 --> ZIPCODE_POPULATION DOUBLE,
 --> COUNTIES_AREA DOUBLE,
 --> HOUSEHOLDS_PER_ZIPCODE DOUBLE,
 --> WHITE_POPULATION DOUBLE,
 --> BLACK_POPULATION DOUBLE,
 --> HISPANIC_POPULATION DOUBLE,
 --> INCOME_PER_HOUSEHOLD DOUBLE,
 --> AVERAGE_HOUSE_VALUE DOUBLE,
 --> INDEX (ZIP_CODE),
 --> INDEX (CITY),
 --> INDEX (STATE),
 --> INDEX (CITY, STATE),
 --> INDEX (ZIP_CODE, CITY, STATE),
 --> INDEX (LATITUDE),
 --> INDEX (LONGITUDE),
 --> INDEX (LATITUDE, LONGITUDE)
 --> );

Step 3. Import the 'ZIPCODEWORLD-US-GOLD.csv' database into table 'ZIPCODEWORLDUS'
 mysql> LOAD DATA LOCAL INFILE '<PATH_TO_DATABASE>\\ZIPCODEWORLD-US-GOLD.CSV'
 --> INTO TABLE ZIPCODEWORLDUS
 --> FIELDS TERMINATED BY ','
 --> ENCLOSED BY '"'
 --> LINES TERMINATED BY '\r\n'
 --> IGNORE 1 LINES;


Part 2: PHP
----------------------------

We demonstrate 3 functions (Get function, Distance function and Radius function) to query the ZIPCodeWorld US Gold Edition database in PHP.
First function is a normal data query for a particular ZIP Code. Second function is to query the distance between two given ZIP Codes. Last function is to query the data within a certain radius from the given ZIP Code.

  <?php

/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:: Include “zipcodeworld.class.php” to call all available functions       ::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
  require('zipcodeworld.class.php');

/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:: Create new object                                                      ::*/
/*::                                                                        ::*/
/*:: $zcw = new ZIPCodeWorld('<HOST>', '<USER>', '<PASS>', '<DBNAME>',      ::*/
/*::                         '<TABLE>');                                    ::*/
/*::                                                                        ::*/
/*:: <HOST> is database host name.                                          ::*/
/*:: <USER> and <PASS> are MySQL username and password.                     ::*/
/*:: <DBNAME> is the database name and <TABLE> is the name of table created.::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/

  $zcw = new ZIPCodeWorld('localhost', 'root', 'password', 'zipcodeworld', 'zipcodeworldus');

// If you have purchased a license key, please upload the “license.key” file to your server.
  $zcw->licenseKey('<PATH_TO_LICENSE_KEY_FILE>/license.key');


/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:: Function: get                                                          ::*/
/*:: array get (string $zip_code [,string $city] [,string $state_name])     ::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
// Search by ZIP Code:

  $result = $zcw->get('75303');

// Option Search by ZIP Code and City Name:
// $result = $zcw->get('75303', 'dallas');

// Option Search by ZIP Code, City Name and State Name:
// $result = $zcw->get('75303', 'dallas', 'texas');

  echo '<b>ZIP Code:</b> ' . $result[0]['ZIP_CODE'] . '<br>';
  echo '<b>City:</b> ' . $result[0]['CITY'] . '<br>';
  echo '<b>State:</b> ' . $result[0]['STATE'] . '<br>';
  echo '<b>Area Code:</b> ' . $result[0]['AREA_CODE'] . '<br>';
  echo '<b>Alias City Name:</b> ' . $result[0]['CITY_ALIAS_NAME'] . '<br>';
  echo '<b>Abbreviation for Alias City Name:</b> ' . $result[0]['CITY_ALIAS_ABBR'] . '<br>';
  echo '<b>City Type:</b> ' . $result[0]['CITY_TYPE'] . '<br>';
  echo '<b>County Name:</b> ' . $result[0]['COUNTY_NAME'] . '<br>';
  echo '<b>County FIPS:</b> ' . $result[0]['COUNTY_FIPS'] . '<br>';
  echo '<b>Time Zone:</b> ' . $result[0]['TIME_ZONE'] . '<br>';
  echo '<b>Day Light Saving Flag:</b> ' . $result[0]['DAY_LIGHT_SAVING'] . '<br>';
  echo '<b>Latitude:</b> ' . $result[0]['LATITUDE'] . '<br>';
  echo '<b>Longitude:</b> ' . $result[0]['LONGITUDE'] . '<br>';
  echo '<b>County Elevation:</b> ' . $result[0]['ELEVATION'] . '<br>';
  echo '<b>Metropolitan Statiscal Area:</b> ' . $result[0]['MSA2000'] . '<br>';
  echo '<b>Primary Metropolitan Statiscal Area:</b> ' . $result[0]['PMSA'] . '<br>';
  echo '<b>Core Based Statiscal Area:</b> ' . $result[0]['CBSA'] . '<br>';
  echo '<b>Metropolitan Division:</b> ' . $result[0]['CBSA_DIV'] . '<br>';
  echo '<b>CBSA Title:</b> ' . $result[0]['CBSA_TITLE'] . '<br>';
  echo '<b>Persons Per Household:</b> ' . $result[0]['PERSONS_PER_HOUSEHOLD'] . '<br>';
  echo '<b>Population of the ZIP Code:</b> ' . $result[0]['ZIPCODE_POPULATION'] . '<br>';
  echo '<b>Counties Square Mileage:</b> ' . $result[0]['COUNTIES_AREA'] . '<br>';
  echo '<b>Households Per ZIP Code:</b> ' . $result[0]['HOUSEHOLDS_PER_ZIPCODE'] . '<br>';
  echo '<b>White Population:</b> ' . $result[0]['WHITE_POPULATION'] . '<br>';
  echo '<b>Black Population:</b> ' . $result[0]['BLACK_POPULATION'] . '<br>';
  echo '<b>Hispanic Population:</b> ' . $result[0]['HISPANIC_POPULATION'] . '<br>';
  echo '<b>Household Income:</b> ' . $result[0]['INCOME_PER_HOUSEHOLD'] . '<br>';
  echo '<b>House Value:</b> ' . $result[0]['AVERAGE_HOUSE_VALUE'] . '<br>';


/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:: Function: distance                                                     ::*/
/*:: double distance (string $zip_code1, $zip_code2 [,string $unit])        ::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
  echo $zcw->distance('00610', '75303') . ' Miles';
// Output:
// 2090.5834850135 Miles



  echo $zcw->distance('00610', '75303', 'km') . ' KM';
// Output:
// 3364.4679881056 KM



/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
/*:: Function: radius                                                       ::*/
/*:: array radius (string $zip_code, $distance [,string $unit])             ::*/
/*::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::*/
  $radius = $zcw->radius('00610', 10, 'miles');
// Output:
// show all ZIP Codes information around 00610 within 10 miles



  foreach ($radius as $row){
    echo '<b>ZIP Code:</b> ' . $row['ZIP_CODE'] . '<br>';
    echo '<b>City:</b> ' . $row['CITY'] . '<br>';
    echo '<b>State:</b> ' . $row['STATE'] . '<br>';
    echo '<b>Alias City Name:</b> ' . $row['CITY_ALIAS_NAME'] . '<br>';
    echo '<br>';
    }


  ?>

  <p><a href="http://www.zipcodeworld.com">www.zipcodeworld.com</a></p>



Hexasoft Development Sdn. Bhd. © 2001-2010 All Right Reserved

To obtain permission to reuse or republish this article, please write to sales@zipcodeworld.com. Republication is welcome for no charge.