Funkce json_decode

Funkce json_decode převádí řetězec ve formátu JSON na proměnné PHP. Prvním parametrem funkce přijímá řetězec JSON, druhým - přepínač převodu (volitelný), a třetím - hloubku rekurze (volitelný). Ve výchozím nastavení funkce vrací asociativní pole.

Syntaxe

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

Příklad

Převeďme jednoduchý řetězec JSON na objekt PHP:

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

Výsledek provedení kódu:

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

Příklad

Převeďme řetězec JSON na asociativní pole:

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

Výsledek provedení kódu:

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

Příklad

Zpracování nekorektního JSON:

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

Výsledek provedení kódu:

phpNULL

Viz také

  • funkci json_encode,
    která převádí data PHP na JSON
  • funkci serialize,
    která převádí data PHP na řetězec