The PHP example code supplied by http://abr.business.gov.au/Webservices.aspx relied on the nuSoap class. I rewrote it to fit our companies needs, based on what I’ve learned from developing the PPSR Soap class I posted earlier. I hope someone finds this useful.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | <?php include(dirname(__FILE__)."/config.inc.php"); // $abn_guid is set here. /** * @author Justin Swan - 16 August 2012 * extends php soap client to utilize the Australian Government ABN Lookup web service * requires php 5 or greater with lib-xml enabled/compiled in Apache, see the PHP manual for further requirements info * * @link http://www.php.net/manual/en/book.soap.php * @link http://abr.business.gov.au/Webservices.aspx * * @param string $guid - get a guid id by registering @ http://abr.business.gov.au/Webservices.aspx * */ class abnlookup extends SoapClient{ private $guid = ""; public function __construct($guid) { $this->guid = $guid; $params = array( 'soap_version' => SOAP_1_1, 'exceptions' => true, 'trace' => 1, 'cache_wsdl' => WSDL_CACHE_NONE ); parent::__construct('http://abr.business.gov.au/abrxmlsearch/ABRXMLSearch.asmx?WSDL', $params); } public function searchByAbn($abn, $historical = 'N'){ $params = new stdClass(); $params->searchString = $abn; $params->includeHistoricalDetails = $historical; $params->authenticationGuid = $this->guid; return $this->ABRSearchByABN($params); } public function searchByName($company_name){ $params = new stdClass(); $params->externalNameSearch = $company_name; $params->authenticationGuid = $this->guid; return $this->ABRSearchByName($params); } } $abn_search_string = "11111111111"; // you can assign your post/get var or abn string here $name_search_string = "some company name"; // replace with the company name you are trying to search try{ $abnlookup = new abnlookup($abn_guid); try{ $result = $abnlookup->searchByAbn($abn_search_string); // $result = $abnlookup->searchByName($name_search_string); // display all results echo "<pre>"; print_r($result); echo "</pre>"; // also display by variables using object notation. echo "<pre>"; $result->ABRPayloadSearchResults->response; echo "</pre>"; } catch (Exception $e){ throw $e; } } catch(Exception $e){ echo $e->getMessage(); } |
Now on GitHub: https://github.com/Kwozzie/australian-government-abn-lookup