Analizza un file JSON in PHP

In questo articolo, introdurremo il metodo per analizzare un file JSON in PHP.

  • Utilizzo della funzione file_get_contents()

I contenuti del file JSON utilizzato nei codici di esempio sono i seguenti.

[
    {
        "id": "01",
        "name": "Olivia Mason",
        "designation": "System Architect"
    },
    {
        "id": "02",
        "name": "Jennifer Laurence",
        "designation": "Senior Programmer"
    },
    {
        "id": "03",
        "name": "Medona Oliver",
        "designation": "Office Manager"
    }
]

Usa la funzione file_get_contents() per analizzare un file JSON in PHP

La funzione incorporata file_get_contents() è usata per leggere un file e memorizzarlo in una stringa. Usando questa funzione, possiamo analizzare un file JSON in una stringa. La sintassi corretta per utilizzare questa funzione è la seguente.

file_get_contents($pathOfFile, $searchPath, $customContext, $startingPoint, $length);

Questa funzione accetta cinque parametri. Il dettaglio di questi parametri è il seguente.

Parametro Descrizione
$pathOfFile obbligatorio Specifica il percorso del file
$searchPath opzionale Specifica il percorso in cui cercare il file.
$customContext opzionale Viene utilizzato per specificare un contesto personalizzato.
$startingPoint opzionale Specifica il punto di partenza del file di lettura.
$length opzionale È la lunghezza massima del file in byte da leggere.

Il seguente programma mostra come analizzare un file JSON.

<?php
$JsonParser = file_get_contents("myfile.json");
var_dump($JsonParser);
?>

La funzione file_get_contents() ha analizzato solo i dati JSON memorizzati in un file JSON. Non possiamo utilizzare questi dati direttamente.

Produzione:

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"
    }
]"

Per rendere utili questi dati, possiamo usare json_decode() per convertire la stringa JSON in un array. Utilizzo di questa funzione nel programma seguente.

<?php
$Json = file_get_contents("myfile.json");
// Converts to an array 
$myarray = json_decode($Json, true);
var_dump($myarray); // prints array
?>

Produzione:

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"
  }
}

Articolo correlato - PHP JSON

  • Genera file Json in PHP
  • Converti XML in JSON in PHP