PHP – Buscar CEP e rastreamento dos Correios

Compartilhe:

Muitos sistemas PHP, a maioria, precisam buscar o endereço via CEP dos correios e até mesmo buscar o rastreamento do itens enviados.

Esta dica mostra exemplo de como realizar este procedimento utilizando o PHP e no final alguns repositórios sobre o mesmo procedimento para o PHP.

Primeiro é preciso utilizar no PHP o SoapClient para carregar o WSDL (Web Service) e utilizar suas funcionalidades.

VAI GOSTAR:

No código logo abaixo mostra como recuperar as informações mediante o número do CEP.

Abre em nova aba

<?php$config=array("trace"=>1,"exception"=>0,"cache_wsdl"=>WSDL_CACHE_MEMORY);$address='https://apps.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl';$client=newSoapClient($address,$config);$cep=$client->consultaCEP(['cep'=>'01415000']);

Resultado

object(stdClass)#2 (1){["return"]=>object(stdClass)#3 (8) {["bairro"]=>string(12) "Consolação"["cep"]=>string(8) "01415000"["cidade"]=>string(10) "São Paulo"["complemento"]=>string(0) ""["complemento2"]=>string(21) "- até 586 - lado par"["end"]=>string(15) "Rua Bela Cintra"["id"]=>int(0) ["uf"]=>string(2) "SP"}}

Sequencia:

$config:configurações doserviço
$address:endereço doWSDL
$client:instância da classe SoapClient com asconfigurações e endereço
$cliente->consultaCEP:é a função que recupera asinformações doCEP informado

Observações:

1) No consultaCEPpara funciona é um Array no formato [cep=>'numero do cep']

2) Esse WebService é muito lento!


CEP inválido e ErrosUse assim:

try{$cep=$client->consultaCEP(['cep'=>'11111111']);var_dump($cep)}catch(Exception$e){var_dump($e)}

object(SoapFault)#3 (10){[“message”:protected]=>string(18) “CEP NAO ENCONTRADO”[“string”:”Exception”:private]=>string(0) “”[“code”:protected]=>int(0) [“file”:protected]=>string(26) “C:\inetpub\wwwroot\cep.php”[“line”:protected]=>int(16) [“trace”:”Exception”:private]=>array(1){[0]=>array(6){[“file”]=>string(26) “C:\inetpub\wwwroot\cep.php”[“line”]=>int(16) [“function”]=>string(6) “__call”[“class”]=>string(10) “SoapClient”[“type”]=>string(2) “->”[“args”]=>array(2){[0]=>string(11) “consultaCEP”1=>array(1){[0]=>array(1){[“cep”]=>string(8) “11111111”}}}}}[“previous”:”Exception”:private]=>NULL [“faultstring”]=>string(18) “CEP NAO ENCONTRADO”[“faultcode”]=>string(11) “soap:Server”[“detail”]=>object(stdClass)#2 (1){[“SigepClienteException”]=>string(18) “CEP NAO ENCONTRADO”}}

Você pode então verificar se não retornou nada!

Alternativas prontas de pacotes em PHP no SitePackagistThe PHP Package Repository

1 –zizaco/cep-consultAtravés do próprio site dos correios

2 –canducci/cepatravés do site viacep.com.br

3 –cagartner/correios-consultaUm Git mais completo com,inclusive,0 cálculo de frete

LEIA TAMBÉM:

  1. Repositórios interessantes para CEP e Correios
  2. Design de Games:O que é preciso para trabalhar na área?
  3. Ferramentas para trabalho remoto e desenvolvimento Front-End
  4. Ferramentas para rastrear baleias cripto e quando comprar o mergulho
  5. Como Aprender e Ensinar programação Python
  6. Extensões do VSCode pra escrever testes unitários com  Cypress

 

Compartilhe:

Ramos da Informática
Ramos da Informáticahttps://ramosdainformatica.com.br
Ramos da Informática é um hub de comunidade sobre linguagens de programação, banco de dados, DevOps, Internet das Coisas, tecnologia da indústria 4.0, Cyber Segurança e Startups.

RECENTES

Claude Sonnet 4.5: Mais Avançado para Programação e Automação

A Anthropic acaba de lançar o Claude Sonnet 4.5,...

AP2 do Google: Desenvolva Pagamentos para agentes de IA

O Google lançou o Agent Payments Protocol (AP2), um...

Curso gratuito de GitHub Copilot para devs e estudantes

A Microsoft abriu as inscrições para o primeiro Bootcamp...

Santander e a Alura oferecem 60.000 bolsas em carreira de tecnologia

Quer dar um salto na sua carreira? O Santander Imersão Digital está...

Google Tradutor desafia o Duolingo com novas ferramentas de aprendizagem de idiomas

O Google está lançando um novo recurso experimental com...

A peça que faltava para agentes de IA autônomos.

Este artigo foi originalmente publicado em: https://www.linkedin.com/newsletters/ezine-dev-ramos-da-inform%25C3%25A1tica-6947960536550526976/ A inteligência...
Newsletter semanal no LinkedIn
EZine Dev Ramos da Informática
Grandes dicas em JavaScript, Node, React, Next, Banco de Dados & IA.
Assinar grátis
Abre em nova aba
spot_img