I have a problem when returning the results I want in JSON. I make a query to the database and when I rescue that answer I keep it in an array and so on up to three times, that is, I want it to return a JSON of three rows. My problem is that I create a double array by doing a json_encode
.
I'm using Slim a PHP microframeWork.
My code:
$app->get('/obtenerLasTresPreguntas', function (Request $request, Response $response, $args) {
$ArrayTresPreguntas = [];
$Preguntas = Preguntas::get();
$CountPreguntas = Preguntas::count();
$array = randomGen(1,$CountPreguntas,3);
foreach ($array as &$valor) {
$Pregunta = Preguntas::where('id', '=', $valor)->get();
array_push($ArrayTresPreguntas,$Pregunta);
}
return json_encode(array_values($ArrayTresPreguntas));
});
And he returns this double array ...
[
[{
"id": 5,
"pregunta": "Cosas que provocan estornudos",
"respuesta": "Polvo,Comida,Irritaci\u00f3n nariz,Mocos,Canela,Virus,Contaminaci\u00f3n,Poluci\u00f3n,Resfriado,Flores,Catarro,Invierno,\u00c1caros,Perfume fuerte,Viento,Moho,Perros,H\u00famedad,H\u00e1mster,Conejos,Fumar,Especias,Heno,Guindilla,Constipado,Alergia a los \u00e1caros,Enfermedades,Lim\u00f3n,Polen,Naranja,Fr\u00edo,Infecci\u00f3n nasal,Pluma,Gripe,Bacterias,Pinos,Pelo,Aire fr\u00edo,Animales,Rinitis,Luz,Aire,Lluvia,Agua,Tierra,Escalofr\u00edo,Reflejos,Caballos,Pimienta,Pelusas,Olor,Cebolla"
}],
[{
"id": 1,
"pregunta": "Top 10 personas m\u00e1s ricas",
"respuesta": "Amancio Ortega,Bill Gates,David Koch,Mark Zuckerberg,Warren Buffett,Carlos Slim,Charles Koch,Larry Ellison,Jeff Bezos,Bernard Arnault"
}],
[{
"id": 4,
"pregunta": "Actores principales de Harry Potter",
"respuesta": "Daniel Radcliffe,Emma Watson,Harry Mellings,Rupert Grint,Tom Felton,Oliver Phelps,Fiona Shaw,Maggie Smith,Evanna Lynch,Jason Isaacs,Devon Murray,Ralph Fiennes,Jame Phelps,Gary Oldman,David Bradley,Matthew Lewis,Richard Griffiths,Michael Gambon,Alfred Enoch,Bonnie Wright,Alan Rickman,Richard Bremmer,Richard Harris,Helena Bonham Carter,Robbie Coltrane,Robert Pattinson"
}]
]
And I want that I get to return exactly the same but without the previous array, which would be this way (it is removing the first and the last bracket):
[{
"id": 5,
"pregunta": "Cosas que provocan estornudos",
"respuesta": "Polvo,Comida,Irritaci\u00f3n nariz,Mocos,Canela,Virus,Contaminaci\u00f3n,Poluci\u00f3n,Resfriado,Flores,Catarro,Invierno,\u00c1caros,Perfume fuerte,Viento,Moho,Perros,H\u00famedad,H\u00e1mster,Conejos,Fumar,Especias,Heno,Guindilla,Constipado,Alergia a los \u00e1caros,Enfermedades,Lim\u00f3n,Polen,Naranja,Fr\u00edo,Infecci\u00f3n nasal,Pluma,Gripe,Bacterias,Pinos,Pelo,Aire fr\u00edo,Animales,Rinitis,Luz,Aire,Lluvia,Agua,Tierra,Escalofr\u00edo,Reflejos,Caballos,Pimienta,Pelusas,Olor,Cebolla"
}], [{
"id": 1,
"pregunta": "Top 10 personas m\u00e1s ricas",
"respuesta": "Amancio Ortega,Bill Gates,David Koch,Mark Zuckerberg,Warren Buffett,Carlos Slim,Charles Koch,Larry Ellison,Jeff Bezos,Bernard Arnault"
}], [{
"id": 4,
"pregunta": "Actores principales de Harry Potter",
"respuesta": "Daniel Radcliffe,Emma Watson,Harry Mellings,Rupert Grint,Tom Felton,Oliver Phelps,Fiona Shaw,Maggie Smith,Evanna Lynch,Jason Isaacs,Devon Murray,Ralph Fiennes,Jame Phelps,Gary Oldman,David Bradley,Matthew Lewis,Richard Griffiths,Michael Gambon,Alfred Enoch,Bonnie Wright,Alan Rickman,Richard Bremmer,Richard Harris,Helena Bonham Carter,Robbie Coltrane,Robert Pattinson"
}]