Função json_decode

A função json_decode converte uma string no formato JSON em variáveis PHP. O primeiro parâmetro da função recebe uma string JSON, o segundo - um flag de conversão (opcional), e o terceiro - a profundidade de recursão (opcional). Por padrão, a função retorna arrays associativos.

Sintaxe

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

Exemplo

Vamos converter uma string JSON simples em um objeto PHP:

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

Resultado da execução do código:

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

Exemplo

Vamos converter uma string JSON em um array associativo:

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

Resultado da execução do código:

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

Exemplo

Processamento de JSON incorreto:

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

Resultado da execução do código:

phpNULL

Veja também

  • a função json_encode,
    que converte dados PHP para JSON
  • a função serialize,
    que converte dados PHP em uma string