Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $seuCepAqui = '';
- $curl = curl_init();
- curl_setopt_array($curl, array(
- CURLOPT_URL => "http://viacep.com.br/ws/{$seuCepAqui}/json/",
- CURLOPT_RETURNTRANSFER => true,
- CURLOPT_ENCODING => "",
- CURLOPT_MAXREDIRS => 10,
- CURLOPT_TIMEOUT => 30,
- CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
- CURLOPT_CUSTOMREQUEST => "GET",
- CURLOPT_HTTPHEADER => array(
- "Cache-Control: no-cache",
- ),
- ));
- $response = curl_exec($curl);
- $err = curl_error($curl);
- curl_close($curl);
- if ($err) {
- /**
- * Aqui vem os erros caso aconteça
- */
- echo "cURL Error #:" . $err;
- } else {
- /**
- * Aqui os retornos caso não haja erros
- */
- /**
- * Vamos debugar o json retornado e armazenado na variavel $response
- */
- echo "Retorno em JSON";
- echo "<br/>";
- echo $response;
- echo "<hr>";
- /*
- * aqui eu transformo o json retornado em array php
- * passando o segundo parametro como TRUE no json_decode
- * eu transformo em array associativo
- */
- $retorno = json_decode($response, true);
- echo "Retorno em ARRAY ASSOCIATIVO";
- var_dump($retorno);
- echo "<hr>";
- /*
- * agora posso pegar os dados com php bem simples
- */
- echo "CEP: " . $retorno['cep'];
- echo "<br/>";
- echo "LOGRADOURO: " . $retorno['logradouro'];
- echo "<hr>";
- /*
- * Caso queira trabalhar com array de objetos
- * basta NÂO passar o segundo parametro no json_decode
- */
- $retorno = json_decode($response);
- echo "Retorno em ARRAY DE OBJETOS";
- var_dump($retorno);
- echo "<hr>";
- /*
- * agora posso pegar os dados com php bem em forma de objeto
- */
- echo "CEP: " . $retorno->cep;
- echo "<br/>";
- echo "LOGRADOURO: " . $retorno->logradouro;
- /**
- * como esse retorno veio apenas um array,
- * eu consigo extrai-lo da forma que fiz acima,
- * sem precisar fazer um foreach
- */
- }
Advertisement
Add Comment
Please, Sign In to add comment