Maison >base de données >tutoriel mysql >Comment puis-je encoder les résultats d'une requête MySQL au format JSON à l'aide de PHP ?
Pour générer les résultats de requête MySQL au format JSON, il existe deux options préférées méthodes : la fonction json_encode() et la fonction mysqli_fetch_all() function.
Utilisation de la fonction json_encode() :
Pour appliquer efficacement la fonction json_encode(), vous devez d'abord récupérer les résultats MySQL dans un tableau. Cela implique de parcourir l'ensemble de résultats et de remplir les éléments individuels d'un tableau à l'aide de la fonction mysqli_fetch_assoc(). Par la suite, vous pouvez encoder l'intégralité du tableau à l'aide de json_encode() et afficher le résultat sous forme de chaîne JSON.
Utilisation de la fonction mysqli_fetch_all() :
Versions modernes de PHP proposez une approche alternative avec la fonction mysqli_fetch_all(). Il vous permet de récupérer l’ensemble des résultats dans un tableau en une seule opération. Vous pouvez spécifier le format du tableau à l'aide de la constante MYSQLI_ASSOC pour obtenir un tableau associatif où les clés correspondent aux noms de colonnes. Une fois l'ensemble de résultats dans le tableau, vous pouvez appliquer json_encode() pour générer la sortie JSON.
Exemples de code :
// Using json_encode() with mysqli_fetch_assoc() $sth = mysqli_query($conn, "SELECT ..."); $rows = array(); while($r = mysqli_fetch_assoc($sth)) { $rows[] = $r; } print json_encode($rows); // Using mysqli_fetch_all() $result = mysqli_query($conn, "SELECT ..."); $rows = mysqli_fetch_all($result); // list arrays with values only in rows // or $rows = mysqli_fetch_all($result, MYSQLI_ASSOC); // assoc arrays in rows print json_encode($rows);
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!