Cómo analizar un archivo JSON en PHP
En este artículo, presentaremos el método para analizar un archivo JSON
en PHP.
- Uso de la función
file_get_contents()
El contenido del archivo JSON
utilizado en los códigos de ejemplo es el siguiente.
[
{
"id": "01",
"name": "Olivia Mason",
"designation": "System Architect"
},
{
"id": "02",
"name": "Jennifer Laurence",
"designation": "Senior Programmer"
},
{
"id": "03",
"name": "Medona Oliver",
"designation": "Office Manager"
}
]
Usando la función file_get_contents()
para analizar un archivo JSON en PHP
La función incorporada file_get_contents()
se usa para leer un archivo y almacenarlo en una cadena. Al usar esta función, podemos analizar un archivo JSON
en una cadena. La sintaxis correcta para usar esta función es la siguiente.
file_get_contents($pathOfFile, $searchPath, $customContext, $startingPoint, $length);
Esta función acepta cinco parámetros. El detalle de estos parámetros es el siguiente.
Parámetro | Descripción | |
---|---|---|
$pathOfFile |
obligatorio | Especifica la ruta del archivo |
$searchPath |
Opcional | Especifica la ruta para buscar el archivo. |
$customContext |
Opcional | Se utiliza para especificar un contexto personalizado. |
$startingPoint |
Opcional | Especifica el punto de partida del archivo de lectura. |
$length |
Opcional | Es la longitud máxima del archivo en bytes a leer. |
El siguiente programa muestra cómo analizar un archivo JSON
.
<?php
$JsonParser = file_get_contents("myfile.json");
var_dump($JsonParser);
?>
La función file_get_contents()
solo ha analizado los datos JSON
almacenados en un archivo JSON
. No podemos usar estos datos directamente.
Producción :
string(328) "[
{
"id": "01",
"name": "Olivia Mason",
"designation": "System Architect"
},
{
"id": "02",
"name": "Jennifer Laurence",
"designation": "Senior Programmer"
},
{
"id": "03",
"name": "Medona Oliver",
"designation": "Office Manager"
}
]"
Para que estos datos sean útiles, podemos usar json_decode()
para convertir la cadena JSON
en un array. Usando esta función en el siguiente programa.
<?php
$Json = file_get_contents("myfile.json");
// Converts to an array
$myarray = json_decode($Json, true);
var_dump($myarray); // prints array
?>
Producción :
array(3) {
[0]=>
array(3) {
["id"]=>
string(2) "01"
["name"]=>
string(12) "Olivia Mason"
["designation"]=>
string(16) "System Architect"
}
[1]=>
array(3) {
["id"]=>
string(2) "02"
["name"]=>
string(17) "Jennifer Laurence"
["designation"]=>
string(17) "Senior Programmer"
}
[2]=>
array(3) {
["id"]=>
string(2) "03"
["name"]=>
string(13) "Medona Oliver"
["designation"]=>
string(14) "Office Manager"
}
}