Como converter uma consulta em um JSON PHP

Escrito por john smith | Traduzido por francisco de castro
  • Compartilhar
  • Tweetar
  • Compartilhar
  • Pin
  • E-mail
Como converter uma consulta em um JSON PHP
Converter uma consulta em um JSON é fácil e eficaz para programadores (Comstock/Comstock/Getty Images)

Embora JSON e SQL sejam tecnologias muito importantes para muitos programadores web, pode ser difícil trabalhar simultaneamente em ambos os formatos de dados. No entanto, pode-se converter consultas SQL para JSON facilmente com um código simples em PHP. Essa é uma ferramenta essencial para qualquer desenvolvedor que usa bancos de dados SQL, para armazenar informações utilizadas em programas que funcionam com JSON.

Nível de dificuldade:
Moderadamente fácil

Outras pessoas estão lendo

O que você precisa?

  • Banco de dados SQL
  • Espaço na web

Lista completaMinimizar

Instruções

    Converter consulta SQL em JSON

  1. 1

    Configure o servidor e o banco de dados SQL. Coloque manualmente as informações que deseja converter em JSON no banco de dados. Faça um novo arquivo PHP no servidor que chamará o banco de dados SQL criado.

  2. 2

    Comece o código no arquivo chamando sua consulta SQL e salvando-a em uma variável PHP. Em seguida, inicialize a string que vai salvar os dados JSON. Utilize o seguinte código:

    $data_sql = mysql_query($query) or die(mysql_error()); $json .= "[\n";

  3. 3

    Configue uma função while que analisará os resultados da consulta SQL, e uma função foreach que construirá os dados JSON. Use o seguinte código:

    $maximum = mysql_num_rows($data_sql) // As linhas totais na consulta $rows = 0; // Utilizado para determinar em que linha está a consulta do código while($data = mysql_fetch_assoc($data_sql)) { if(count($data) > 1) $json .= "{\n"; $num = 0; foreach($data as $key => $value) { // Fragmenta a consulta if(count($data) > 1) $json .= "\"$key\":\"$value\""; // Isso vai sair como "chave": "valor" else $json .= "\"$value\""; // Se não estiver em um array associado $num++; if($num < count($data)) $json .= ",\n"; //Somente terá uma vírgula se não for a última posição do array } $rows++; if(count($data) > 1) $json .= "}\n"; if($rows < $maximum) $json .= ",\n"; // Novamente, somente terá uma vírgula se não for a última posição do array }

  4. 4

    Finalmente, finalize os dados JSON. Agora ele está pronto para ser colocado em qualquer função que utiliza o formato JSON. Use o código a seguir:

    $json .= "]\n";

Não perca

Filtro:
  • Geral
  • Artigos
  • Slides
  • Vídeos
Mostrar:
  • Mais relevantes
  • Mais lidos
  • Mais recentes

Nenhum artigo disponível

Nenhum slide disponível

Nenhum vídeo disponível