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

Publicado em Sem categoria por felipe. Marque Link Permanente.

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.