Como usar cURL para obter dados JSON e decodificar dados JSON em PHP
Neste artigo, vamos introduzir métodos para utilizar cURL
para obter dados JSON
e decodificar dados JSON
em PHP.
- Utilizando as funções
cURL
Utilize cURL
Funções para utilizar cURL
para obter dados JSON e decodificar dados JSON em PHP
Existem diferentes funções de cURL
que são utilizadas coletivamente para obter dados de JSON
e decodificar dados JSON. Estas são curl_init()
, curl_setopt()
, curl_exec()
e curl_close()
. Os detalhes destas funções são os seguintes
A função curl_init()
é utilizada para inicializar uma nova sessão para utilizar as funções cURL
. A sintaxe correta para utilizar esta função é a seguinte
curl_init($url);
Os parâmetros $url
é um parâmetro opcional. Se for fornecido, seu valor é definido como CURLOPT_URL
. Caso contrário, podemos defini-lo mais tarde. No caso de sucesso, esta função retorna um comando cURL
.
A função curl_setopt()
é utilizada para definir uma opção para o processo cURL
. A sintaxe correta para utilizar esta função é a seguinte
curl_setopt($handle, $option, $value);
O primeiro parâmetro é a alavanca devolvida pela função curl_init()
. O segundo parâmetro é a opção para o processo cURL
. O terceiro parâmetro é o valor da opção selecionada. Você pode verificar as opções aqui.
A função curl_exec()
executa a sessão cURL
. Ela retorna verdadeiro sobre o sucesso e falso sobre o fracasso. A sintaxe correta para utilizar esta função é a seguinte.
curl_exec($handle);
Ela tem apenas um parâmetro $handle
que é a alavanca retornada pela função curl_init()
.
A função curl_close()
encerra a sessão iniciada pela função curl_init()
. A sintaxe correta para utilizar esta função é a seguinte
curl_close($handle);
Ele aceita apenas um parâmetro $handle
que é o cabo devolvido pela função curl_init()
.
Agora vamos utilizar estas funções para obter dados JSON
e decodificar os dados JSON
.
// Initiate curl session
$handle = curl_init();
// Will return the response, if false it prints the response
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
// Set the url
curl_setopt($handle, CURLOPT_URL,$YourUrl);
// Execute the session and store the contents in $result
$result=curl_exec($handle);
// Closing the session
curl_close($handle);
Agora usaremos a função file_get_contents()
para obter os dados JSON
da URL e a função json_decode()
para converter a string JSON
em um array.
$result = file_get_contents($url);
$array = json_decode($result, true);
var_dump($array);
A função var_dump()
irá exibir os dados JSON
na forma de um array.