¿Cómo usar cURL para obtener datos JSON y decodificar datos JSON en PHP?

En este artículo, veremos cómo usar cURL para obtener datos JSON y decodificar datos JSON en PHP.

rizo

  • Significa URL del cliente.
  • Es una herramienta de línea de comandos para enviar y obtener archivos utilizando la sintaxis de URL.
  • cURL permite comunicarse con otros servidores mediante HTTP, FTP, Telnet y más.

Acercarse:

  • Vamos a obtener datos JSON de uno de los sitios web gratuitos, que proporciona datos JSON para probar, es decir, reqres.in
  • Primero, inicializamos curl usando el método curl_init().
  • Enviando una solicitud GET al servidor reqres.in usando el método curl_setopt() con CURLOPT_URL para obtener datos json.
  • Después de eso, tenemos que decirle a curl que almacene datos json en una variable en lugar de volcarlos en la pantalla. Esto se hace usando el parámetro CURLOPT_RETURNTRANSFER en la función curl_setopt().
  • Ejecute curl usando el método curl_exec().
  • Por último, cierre el rizo usando el método curl_close().

Ejemplo:

PHP

<?php
 
// Initializing curl
$curl = curl_init();
   
// Sending GET request to reqres.in
// server to get JSON data
curl_setopt($curl, CURLOPT_URL,
    "https://reqres.in/api/users?page=2");
   
// Telling curl to store JSON
// data in a variable instead
// of dumping on screen
curl_setopt($curl,
    CURLOPT_RETURNTRANSFER, true);
   
// Executing curl
$response = curl_exec($curl);
 
// Checking if any error occurs
// during request or not
if($e = curl_error($curl)) {
    echo $e;
} else {
     
    // Decoding JSON data
    $decodedData =
        json_decode($response, true);
         
    // Outputting JSON data in
    // Decoded form
    var_dump($decodedData);
}
 
// Closing curl
curl_close($curl);
?>

Producción:

Solicitud GET usando cURL

Publicación traducida automáticamente

Artículo escrito por asmitsirohi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *