Location: PHPKode > scripts > CEP Web Service > cep-web-service/CepWebService.php
<?php

/**
 *
 * @category	CEP
 * @package		CepWebService
 * @version		0.1 (beta)
 * @author		Deni Santos <hide@address.com>
 * @copyright	Copyright (c) 2008 Deni Santos <hide@address.com>
 * @license		GPL
 *
 * Extra :
 * @generated	PHPEclipse <http://www.phpeclipse.de/>
 *				Ecplise 3.3.1.1 <http://www.eclipse.org/>
 *				Eclipse - an open development platform!
 *				For good programmers! =)
 *
 */
class CepWebService
{
	/**
     * CEP - armazena o numero do CEP para efetuar a pesquisa
     *
     * @var string
     */
	protected $_cep = '';

	/**
	 * Seta o CEP para pesquisa
	 *
	 * @param string $controller
	 * @return CepWebService
	 */
	public function setCep($cep)
	{
		$this->_cep = (string) $cep;
		return $this;
	}

	/**
	 * Retorna o CEP da pesquisa
	 *
	 * @return string
	 */
	public function getCep()
	{
		return $this->_cep;
	}

	/**
	 * Busca as informações do CEP no webservice
	 *
	 * @return array
	 */
	public function find()
	{
		if(empty($this->_cep)) {
			throw new Exception("Parâmetro CEP não foi definido.");
		}

		$client = new SoapClient(NULL,
	        array(
		        "location" => "http://www.byjg.com.br/xmlnuke-php/webservice.php/ws/cep",
		        "uri"      => "urn:xmethods-delayed-quotes",
		        "style"    => SOAP_RPC,
		        "use"      => SOAP_ENCODED
				)
			);

		$result = $client->__call(
	        // Nome do método
	        "obterLogradouro",
	        // Parâmetros
	        array(
	            new SoapParam(
	                // CEP informado
	                $this->_cep,
	                // Nome do parâmentro
	                "parameters"
	        	)
	        ),
	        // Opções
	        array(
	            "uri" => "urn:xmethods-delayed-quotes",
	            "soapaction" => "urn:xmethods-delayed-quotes#getQuote"
	        )
		);

		if(strpos($result, utf8_encode('não encontrado')) !== false) {
			$retorno = array();
		} else {
			$retorno = explode(', ', $result);
			$retorno = array_map('trim', $retorno);
			$retorno = array_map('strtolower', $retorno);
			$retorno = array_map('ucwords', $retorno);
		}

		return $retorno;
	}
}
?>
Return current item: CEP Web Service