Zend_Service_StrikeIron | Zend_Service Programmer's Reference Guide | Zend_Service_StrikeIron: Advanced Uses
# Zend_Service_StrikeIron: Bundled Services Zend_Service_StrikeIron comes with wrapper classes for three popular StrikeIron services. # ZIP Code Information Zend_Service_StrikeIron_ZipCodeInfo provides a client for StrikeIron's Zip Code Information Service. For more information on this service, visit these StrikeIron resources: » Zip Code Information Service Page » Zip Code Information Service WSDL The service contains a getZipCode() method that will retrieve information about a United States ZIP code or Canadian postal code: $strikeIron = new Zend_Service_StrikeIron(array('username' => 'your-username', 'password' => 'your-password')); // Get a client for the Zip Code Information service $zipInfo = $strikeIron->getService(array('class' => 'ZipCodeInfo')); // Get the Zip information for 95014 $response = $zipInfo->getZipCode(array('ZipCode' => 95014)); $zips = $response->serviceResult; // Display the results if ($zips->count == 0) { echo 'No results found'; } else { // a result with one single zip code is returned as an object, // not an array with one element as one might expect. if (! is_array($zips->zipCodes)) { $zips->zipCodes = array($zips->zipCodes); } // print all of the possible results foreach ($zips->zipCodes as $z) { $info = $z->zipCodeInfo; // show all properties print_r($info); // or just the city name echo $info->preferredCityName; } } // Detailed status information // http://www.strikeiron.com/exampledata/StrikeIronZipCodeInformation_v3.pdf $status = $response->serviceStatus; # U.S. Address Verification Zend_Service_StrikeIron_USAddressVerification provides a client for StrikeIron's U.S. Address Verification Service. For more information on this service, visit these StrikeIron resources: » U.S. Address Verification Service Page » U.S. Address Verification Service WSDL The service contains a verifyAddressUSA() method that will verify an address in the United States: $strikeIron = new Zend_Service_StrikeIron(array('username' => 'your-username', 'password' => 'your-password')); // Get a client for the Zip Code Information service $verifier = $strikeIron->getService(array('class' => 'USAddressVerification')); // Address to verify. Not all fields are required but // supply as many as possible for the best results. $address = array('firm' => 'Zend Technologies', 'addressLine1' => '19200 Stevens Creek Blvd', 'addressLine2' => '', 'city_state_zip' => 'Cupertino CA 95014'); // Verify the address $result = $verifier->verifyAddressUSA($address); // Display the results if ($result->addressErrorNumber != 0) { echo $result->addressErrorNumber; echo $result->addressErrorMessage; } else { // show all properties print_r($result); // or just the firm name echo $result->firm; // valid address? $valid = ($result->valid == 'VALID'); } # Sales & Use Tax Basic Zend_Service_StrikeIron_SalesUseTaxBasic provides a client for StrikeIron's Sales & Use Tax Basic service. For more information on this service, visit these StrikeIron resources: » Sales & Use Tax Basic Service Page » Sales & Use Tax Basic Service WSDL The service contains two methods, getTaxRateUSA() and getTaxRateCanada(), that will retrieve sales and use tax data for the United States and Canada, respectively. $strikeIron = new Zend_Service_StrikeIron(array('username' => 'your-username', 'password' => 'your-password')); // Get a client for the Sales & Use Tax Basic service $taxBasic = $strikeIron->getService(array('class' => 'SalesUseTaxBasic')); // Query tax rate for Ontario, Canada $rateInfo = $taxBasic->getTaxRateCanada(array('province' => 'foo')); print_r($rateInfo); // show all properties echo $rateInfo->GST; // or just the GST (Goods & Services Tax) // Query tax rate for Cupertino, CA USA $rateInfo = $taxBasic->getTaxRateUS(array('zip_code' => 95014)); print_r($rateInfo); // show all properties echo $rateInfo->state_sales_tax; // or just the state sales tax
Zend_Service_StrikeIron | Zend_Service Programmer's Reference Guide | Zend_Service_StrikeIron: Advanced Uses