Obtener el objeto JSON de la URL en PHP
-
Utilice la función
file_get_contents()
para obtener el objeto JSON de la URL en PHP -
Utilice
curl
para obtener un objeto JSON de la URL en PHP
Este tutorial presenta cómo obtener el objeto JSON de una URL en PHP.
Utilice la función file_get_contents()
para obtener el objeto JSON de la URL en PHP
Podemos usar file_get_contents()
junto con json_decode()
para obtener el objeto JSON de una URL. La función file_get_contents()
lee el archivo en formato de cadena. Debemos especificar la ruta al archivo en la función o incluso podemos dar la URL en la función como primer parámetro. Debemos habilitar allow_url_fopen
para usar la función file_get_contents()
. Podemos habilitarlo configurando phpini_set("allow_url_fopen", 1)
en el archivo php.ini
. La función json_decode()
convierte el objeto JSON en un objeto PHP. Por lo tanto, podemos acceder a los objetos en la URL JSON como objetos PHP.
Para la demostración, usaremos una URL JSON ficticia de jsonplaceholder. Cree una variable $url
y almacene la URL en ella. Utilice la URL https://jsonplaceholder.typicode.com/posts/1
. Los objetos JSON de la URL se muestran a continuación. A continuación, cree una variable $json
y utilice $url
como argumento para la función file_get_contents()
. Ahora, use la función json_decode()
para decodificar una cadena JSON en un objeto PHP. Almacene el objeto en la variable $jo
. Por último, acceda al objeto title
con $jo
e imprímalo.
Por lo tanto, accedimos a una URL que contenía un objeto JSON desde la web y lo convertimos a PHP. De esta forma, podemos obtener objetos JSON de una URL en PHP.
Código de ejemplo:
{
"userId": 1,
"id": 1,
"title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
"body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
}
<?php
$url = 'https://jsonplaceholder.typicode.com/posts/1';
$json = file_get_contents($url);
$jo = json_decode($json);
echo $jo->title;
?>
Producción :
sunt aut facere repellat provident occaecati excepturi optio reprehenderit
Utilice curl
para obtener un objeto JSON de la URL en PHP
curl
es una herramienta de línea de comandos que se utiliza para enviar y recibir datos y archivos. Utiliza protocolos compatibles como HTTP, HTTPS, FTP, etc. y envía datos desde o hacia un servidor. En PHP, hay una biblioteca curl
que nos permite realizar una solicitud HTTP. Podemos usar curl
para leer el contenido del archivo desde la web. Hay varias funciones curl
en PHP que nos facilitan enviar y recibir datos. Podemos usarlos para obtener objetos JSON de una URL. La función curl_init()
inicia el curl. Podemos usar la función curl_setopt()
para configurar varias opciones como devolver la transferencia y configurar las URL. La función curl_exec()
ejecuta la operación y curl_close()
cierra el rizo.
Podemos utilizar la misma URL que en el primer método para demostrar el uso de curl
. Cree una variable $curl
e inicie el curl con la función curl_init()
. Configure la opción CURLOPT_RETURNTRANSFER
como verdadera usando la función curl_setopt()
. A continuación, configure la URL con la opción CURLOPT_URL
. Ejecute el curl con la función curl_exec()
con $curl
en el parámetro y guárdelo en la variable $res
. Utilice la función curl_close()
para cerrar la variable $curl
. A continuación, utilice la función json_decode()
para cambiar el objeto JSON a un objeto PHP y mostrar el objeto title
.
Por lo tanto, podemos obtener el objeto JSON de una URL usando curl
.
Código de ejemplo:
<?php
$curl= curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_URL, 'https://jsonplaceholder.typicode.com/posts/1';
$res = curl_exec($curl);
curl_close($curl);
$jo = json_decode($res);
echo $jo->title; ?>
Producción :
sunt aut facere repellat provident occaecati excepturi optio reprehenderit
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn