Como convertir MySQL data a formato JSON con PHP

Conocimiento es poder!

Como convertir MySQL data a formato JSON con PHP

Json

El siguiente código muestro Como convertir MySQL data a formato JSON con PHP.

Luego, la data en formato JSON será escrita en un archivo y guardada en el servidor.

NOTA: Este código supone que ya tienes data o información en una base de datos MySQL.

En este ejemplo vamos a suponer que usted necesita extraer data de la base de datos de una agencia de empleos y convertirla a formato json.

Por eso notaras que los arrays en el bucle while tienen el nombre de id_anuncio, Titulo, Descripción y Requisitos.

Tambien notaras que la variable que almacena la ubicación donde sera escrita la data se llama $listaEmpleos.

Pero puedes usar o cambiar esos nombres por los que desees.

$host_db = "IPSERVIDOR";
 $user_db = "USUARIO";
 $pass_db = "PASSWORD";

 $conexion = mysql_connect($host_db, $user_db, $pass_db);

 if (!$conexion)
 {
 die('Error: ' . mysql_error());
 }
 mysql_select_db(NOMBRE_BASE_DATOS, $conexion); 

 $query = mysql_query("SELECT * FROM main_table ORDER
 BY id_anuncio DESC"); 

 $convertToJson = array();

 while($row = mysql_fetch_array($query, MYSQL_ASSOC))
 {
 $rowArray['id_anuncio'] = $row['id_anuncio'];
 $rowArray['Titulo'] = $row['Titulo'];
 $rowArray['Descripcion'] = $row['Descripcion'];
 $rowArray['Requisitos'] = $row['Requisitos'];

 array_push($convertToJson, $rowArray);
 }
 json_encode($convertToJson);

 $listaEmpleos = "json/listaEmpleos.json";

 $data = json_encode($convertToJson); 

 if ($fp = fopen($listaEmpleos, "w"))
 {
 fwrite($fp, $data);
 }
 fclose($fp);

 mysql_close($conexion) 

Breve Explicación del código.

En las primeras líneas, las variables y funciones típicas de conexión a la base de datos y manejo de error.

Luego la selección de la base de datos mysql_select_db(NOMBRE_BASE_DATOS, $conexion);

Despues la variable $query almacena la consulta echa a la base de datos y ordena los resultados por id_anuncio en forma descendente.

La variable $convertToJson almacena la data MySQL que va a ser convertida.

El bucle while va extrayendo y almacenando la data en la variable $rowArray.

Puedes notar que las variables $rowArray[] y $row[] tienen el mismo contenido escrito dentro de ellas.

La data que almacena $rowArray[] es la que se va convertir en formato Json y se va a guardar en un archivo.

La data que almacena $row[] es la que se extrajo de la tabla o la BD.

Puedes cambiar el contenido de $rowArray[] por otros nombres, pero el de $row[] debe ser igual a los nombres de las columnas de la tabla en la BD que estas usando.

Dentro del bucle while esta la función array_push(); que utiliza como argumentos las variables $converToJson y $rowArray.

La función json_encode(); retorna o devuelve los datos del valor dado en formato JSON. En este caso el valor dado es la variable $convertToJson.

$listaEmpleos almacena la ubicación (en este caso la carpeta y el nombre del archivo) donde sera guardada la data en formato JSON.

$data variable que almacena el contenido de la función json_encode().

$fp (file pointer) almacena el contenido de la función fopen();

Utiliza como argumentos la variable $listaEmpleos la cual tiene la ubicación donde sera escrita la data y el modo de apertura ‘w’ (write) en escritura.

Función fwrite(); escribe la data en el archivo utilizando como argumentos las variables $fp y $data.

fclose(); para cerrar el archivo una vez sea escrita la data.

mysql_close($conexion) para cerrar la conexión a la base de datos.

DONE!

Más información sobre las funciones aquí usadas en la documentación de PHP.

Gracias por leer. Espero que les sea útil. Que sean bendecidos!

Tags: , ,

Deja tus comentarios o preguntas!

This site uses Akismet to reduce spam. Learn how your comment data is processed.