JSON sta per JavaScript Object Notation ed è una sintassi per l’archiviazione e lo scambio di dati semplice e veloce.
Poiché il formato JSON è un formato basato su testo, come detto può essere facilmente inviato e utilizzato come formato dati e assorbito da qualsiasi linguaggio di programmazione.
PHP e JSON
PHP ha alcune funzioni integrate per gestire JSON. Per prima cosa esamineremo le due funzioni seguenti:
- codifica_json()
- json_decode()
PHP – codifica_json()
La funzione json_encode() viene utilizzata per codificare un valore nel formato JSON.
Questo esempio mostra come codificare un array associativo in un oggetto JSON:
<?php
$age = array("Peter"=>35, "Ben"=>37, "Joe"=>43);
echo json_encode($age);
?>
Questo esempio mostra come codificare un array indicizzato in un array JSON:
<?php
$cars = array("Volvo", "BMW", "Toyota");
echo json_encode($cars);
?>
PHP – json_decode()
La funzione json_decode() viene utilizzata per decodificare un JSON in un oggetto PHP o in un array associativo.
Questo esempio decodifica i dati JSON in un oggetto PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj));
?>
La funzione json_decode() restituisce un oggetto per impostazione predefinita. La funzione json_decode() ha un secondo parametro e, quando impostato su true, gli oggetti JSON vengono decodificati in array associativi.
Questo esempio decodifica i dati JSON in un array associativo PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj, true));
?>
PHP – Accesso ai valori decodificati
Ecco due esempi di come accedere ai valori decodificati da un oggetto e da un array associativo:
Questo esempio mostra come accedere ai valori da un oggetto PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
echo $obj->Peter;
echo $obj->Ben;
echo $obj->Joe;
?>
Questo esempio mostra come accedere ai valori da un array associativo PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
echo $arr["Peter"];
echo $arr["Ben"];
echo $arr["Joe"];
?>
PHP – Ciclo attraverso i valori
Puoi anche scorrere i valori con un ciclo foreach() :
Questo esempio mostra come scorrere i valori di un oggetto PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
foreach($obj as $key => $value) {
echo $key . " => " . $value . "<br>";
}
?>
Questo esempio mostra come scorrere i valori di un array associativo PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
foreach($arr as $key => $value) {
echo $key . " => " . $value . "<br>";
}
?>
