PHP + Json

json-php-transferencia-de-dados-eficiente

Use JSON e PHP no lugar de XML

 

O que é JSON?

JSON é um sigla para o termo JavaScript Object Notation (Notação de Objetos JavaScript). Como o próprio termo sugere, é uma forma textual para definir objetos usando um caminho diferente do que aprendemos ao estudar JavaScript.Mas não se engane, JSON não é uma nova tecnologia, é apenas um recurso da própria linguagem JavaScript.

Não é pretensão deste artigo explicar detalhadamente as diferenças de objetos tradicionais JavaScript e a notação de objetos usando JSON, mas mostrar sua utilidade como tecnologia para integração com outras aplicações.

Então… Porque o JSON e não XML?

Por ser uma linguagem de notação de objetos JavaScript, JSON não possui apenas a função de transferir dados, mas é possível também transferir objetos com métodos e propriedades do lado servidor para o cliente (navegador de internet), assim como criar objetos dinâmicos para as interfaces de interação com os usuários. As seguintes características contribuíram para que o JSON fosse utilizado como alternativa ao XML:

  • Por ser parte da linguagem JavaScript, JSON é completamente entendido e interpretado por todos os navegadores de internet que possuem suporte à JavaScript.
  • JSON é mais rápido de escrever, ler e entender que o XML.
  • JSON é executado de forma mais rápida que o XML, principalmente em requisições Ajax.
  • Um objeto em notação JSON pode ser criado a partir de uma string com um simples comando eval.
  • Por tornar-se popular entre os desenvolvedores, muitas outras tecnologias adicionaram suporte ao JSON, como o PHP, Java, C++, Python…
  • PHP possui a capacidade de transformar seus arrays em notação JSON e vice-versa, usando as funções json_encode e json_decode.
  • Por possuir uma sintaxe semelhante aos arrays, listas, hashmaps, e dicionários em outras linguagens, JSON se tornou uma notação com baixa curva de aprendizado para a maioria dos desenvolvedores, incluindo o programador PHP.

Como o JSON funciona?

Como já mencionei, o JSON entende como objeto tudo que estiver entre {} num formato de nome:valor. O nome é um texto que representa o atributo do objeto e o valor é um valor do tipo existente em JavaScript como: String, Number, Boolean ou null.

Assim, eu posso criar um objeto pessoa com os atributos nome e idade seguindo o padrão mencionado acima. Abaixo segue o código de exemplo:

Para acessar os valores dos atributos do objeto pessoa, basta usar o padrão objeto.atributo. Para modificar e adicionar dados ao atributo, usa-se o mesmo parão. Em JavaScript, isso poderia ser feito assim:

Outro recurso interessante do JSON são as listas, um array simples onde eu posso armazenar qualquer valor ou tipo de objeto. Toda lista em JSON é adicionada entre [] e cada item da lista está separado por “,”.

Como demonstrado no código acima, temos uma lista de objetos JavaScript em notação JSON com os atributos nome e idade.

E onde entra o PHP?

O PHP entra em ação quando é necessário gerar ou recuperar dados no formato JSON. Quando você precisa gerar uma informação em JSON, o caminho mais simples é criar um array e depois imprimir o resultado da função json_encode, passando o array como parâmetro para a função.

O código acima imprime um objeto em notação JSON que pode ser lido por uma requisição Ajax ou uma página PHP. Note que antes de imprimir o JSON, indicamos o tipo de conteúdo da página para o navegador de internet do usuário, assim o navegador irá se preparar para o conteúdo JSON que está por vir. Se você fosse escrever um arquivo JavaScript para ler o resultado do código acima, deveria escrever algo assim:

Note que usei jQuery para criar o JavaScript de leitura do JSON gerado pelo PHP. Se você não conhece jQuery, sugiro uma estudada no assunto. Um bom lugar para começar é o sitejquery.com.

No caso da linguagem PHP, você poderia escrever um código PHP para ler os objetos JSON degerar-json.php e manipular os objetos. Para isso, você poderia escrever um código como o mostrado abaixo:

No código acima, usamos a função file_get_contents para ler o conteúdo de gera-json.php e armazená-lo numa variável. Em seguida, transformamos o conteúdo JSON num array associativo da linguagem PHP, com objetivo de tornar a manipulação dos dados mais fácil.

Fonte PHP Mais

Avatar

Sobre felipe

Experiência na área de tecnologia da informação atuando em empresas de São Paulo e tendo como especialidade a área de desenvolvimento Full Stack Web Developer e administração de servidores linux. Ampla experiencia em banco de dados relacionais entre eles Oracle, Mysql , Sql Server e Postgre. Analista de Sistemas, Programador PHP, Java, Node e outras linguagens, Analista de Configuracao de Ambiente, Analista Linux, Analista de Bancos de Dados Mysql, Oracle, SQL Server e Postgree.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *