Funzione json_decode

La funzione json_decode converte una stringa in formato JSON in variabili PHP. Il primo parametro della funzione accetta una stringa JSON, il secondo - un flag di conversione (opzionale), e il terzo - la profondità di ricorsione (opzionale). Per impostazione predefinita, la funzione restituisce array associativi.

Sintassi

phpjson_decode(string, [assoc = false], [depth = 512], [flags = 0]);

Esempio

Convertiamo una semplice stringa JSON in un oggetto PHP:

php<?php
  $json = '{"a":1,"b":2,"c":3}';
  $res = json_decode($json);
  print_r($res);
?>

Risultato dell'esecuzione del codice:

phpstdClass Object
(
  [a] => 1
  [b] => 2
  [c] => 3
)

Esempio

Convertiamo una stringa JSON in un array associativo:

php<?php
  $json = '{"a":1,"b":2,"c":3}';
  $res = json_decode($json, true);
  print_r($res);
?>

Risultato dell'esecuzione del codice:

php[
  'a' => 1,
  'b' => 2,
  'c' => 3,
]

Esempio

Gestione di JSON non corretto:

php<?php
  $json = '{"a":1,"b":2,"c":3';
  $res = json_decode($json);
  var_dump($res);
?>

Risultato dell'esecuzione del codice:

phpNULL

Vedi anche

  • la funzione json_encode,
    che converte i dati PHP in JSON
  • la funzione serialize,
    che converte i dati PHP in una stringa