Como converter Array em JSON e Vice-versa no PHP

Muitas pessoas se perguntam como converter array em JSON ou JSON em Array. Em minha experiência profissional, vi diversos desenvolvedores PHP criando suas próprias rotinas para fazer esta conversão.

A boa notícia é que o PHP possui uma função nativa para trabalhar corretamente com JSON. Neste artigo, vou explicar o que é JSON e como você pode utiliza-lo em seus projetos.

O que é JSON?

JSON (JavaScript Object Notation) é um formato leve de troca de dados entre serviços. Apesar do nome ter Javascript como referência, não quer dizer que apenas esta linguagem pode utilizar JSON para trafegar informações.

JSON é usado em diversos serviços em diferentes linguagens de programação por ser simples e leve para enviar dados pela rede, mais leve do que o XML.

{
     "primeiroNome": "Rodrigo",
     "ultimoNome": "Macedo",
     "endereco": {
         "rua": "Rua Gary Vee",
         "cidade": "Rio de Janeiro",
         "estado": "RJ",
         "cep": 10021
     },
     "Telefones": [
         "21 2222-33333",
         "21 3333-44444"
     ]
 }

Bastante simples de ler (quando bem formato, certo)? Agora que você sabe os benefícios de usar JSON, vou ensinar como criar esta formatação em seu projetos.

Agora vamos aprender a criar uma estrutura JSON usando PHP.

Criando JSON a partir de um Array

Agora, vamos demonstrar como criar um JSON a partir de um array criado por nós. Para isso, basta usar o método json_encode e enviar o array.

$json_dados = array ('id'=>1,'nome'=>"Rodrigo",'Pais'=>'Brasil',"Trabalho"=>array("WiseBits","Empresa2"));
//imprime o array com formatação JSON.
echo json_encode($json_dados);

Bastante simples. Agora, vamos mostrar fazer o caminho inverso.

// Vamos inserir em uma string, uma mensagem em formatação JSON.
$json_string='{"id":1,"nome":"Rodrigo","pais":"brasil","trabalho":["WiseBits","OutraEmpresa"]} ';

// Agora, vamos converter para array.
$objArray=json_decode($json_string);
//Vamos imprimir os dados que precisamos.
echo $objArray->nome; //Exibirá Rodrigo
echo $objArray->trabalho[0]; //Exibirá Wisebits

Espero que tenha gostado deste artigo. Se tiver alguma dúvida sobre o uso do JSON no PHP, você pode entrar em contato direto comigo, ou usar os comentários abaixo. Terei o maior prazer em te responder.