Funktio json_decode

Funktio json_decode muuntaa JSON-muodossa olevan merkkijonon PHP-muuttujiksi. Ensimmäisenä parametrina funktio ottaa JSON-merkkijonon, toisena - muunnoslipun (valinnainen), ja kolmantana - rekursiosyvyyden (valinnainen). Oletusarvoisesti funktio palauttaa assosiatiivisia taulukoita.

Syntaksi

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

Esimerkki

Muunnetaan yksinkertainen JSON-merkkijono PHP-objektiksi:

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

Koodin suorituksen tulos:

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

Esimerkki

Muunnetaan JSON-merkkijono assosiatiiviseksi taulukoksi:

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

Koodin suorituksen tulos:

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

Esimerkki

Virheellisen JSON:n käsittely:

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

Koodin suorituksen tulos:

phpNULL

Katso myös

  • funktion json_encode,
    joka muuntaa PHP-tiedot JSON-muotoon
  • funktion serialize,
    joka muuntaa PHP-tiedot merkkijonoksi