por eso he pensado que la forma más optima de obtener json seria que la misma bd te devolviera los resultados en dicho formato.
Usando las funciones CONCAT() y GROUP_CONCAT() lograriamos construir el JSON directamente desde la consulta SQL.
Código:
Luego insertaremos unos cuantos registros.CREATE TABLE `user`(
`id` int not null auto_increment,
`name` varchar(100),
`email` varchar(50),
PRIMARY KEY(id)
) ENGINE = InnoDB;
Código:
Finalmente realizaremos la consulta que nos traera el JSON.INSERT INTO `user` (`name`, `email`) VALUES
('Cesar', '[email protected]'),
('Maria', '[email protected]'),
('Jose', '[email protected]'),
('Albert','[email protected]');
Código:
resultado:SELECT
CONCAT( "[",
GROUP_CONCAT(
CONCAT("{name:'",`name`,"'"),
CONCAT(",email:'",`email`,"'}")
)
,"]")
AS json FROM users;
Código:
[
{
name : 'Cesar',
email: '[email protected]'
},
{
name : 'Maria',
email: '[email protected]'
},
{
name : 'Jose',
email: '[email protected]'
},
{
name : 'Albert',
email: '[email protected]'
}
]


Este tema le ha gustado a 2 personas