Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Oi Pessoal.
Estou tentando fazer funcionar um código que faz buscas de endereço na base do Correio através de um CEP informado, e quem escreveu este código disse:
Basta chamar o método busca() da classe BuscaCEP.
Código:
<?php
class BuscaCEP
{
protected function formata($response)
{
$dom = new DOMDocument();
@$dom->loadHTML($response);
$xpath = new DOMXPath($dom);
$values = $xpath->query('//*[@class="respostadestaque"]');
$result = [];
// Se não encontrar CEP, retorna false
if (!$values->length) {
return false;
}
// Obtém informações desejadas, tratando-as quando necessário
foreach ($values as $value) {
$result[] = preg_replace(
'~[\s]{2,}~',
'',
trim($value->childNodes->item(0)->nodeValue)
);
}
list($logradouro, $bairro, $localidade, $cep) = $result;
list($localidade, $uf) = explode('/', $localidade);
return compact('logradouro', 'bairro', 'localidade', 'uf', 'cep');
}
public function busca($cep)
{
$response = file_get_contents(
'http://m.correios.com.br/movel/buscaCepConfirma.do',
false,
stream_context_create([
'http' => [
'header' => "Content-Type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => http_build_query([
'cepEntrada' => $cep,
'metodo' => 'buscarCep',
]),
],
])
);
return $this->formata($response);
}
}
?>
Como eu faço para ( Chamar o método busca() da classe BuscaCEP. ) ?
Obrigado
Fábio!
Carregando comentários...