Création de tableaux JSON à partir de bases de données MySQL
De nombreuses applications nécessitent la possibilité de créer dynamiquement des tableaux JSON à partir d'enregistrements de base de données. Il s'agit d'une tâche particulièrement courante lorsque vous travaillez avec des applications Web qui utilisent des frameworks frontaux tels que FullCalendar pour afficher des événements dynamiques.
Structure de tableau JSON
Dans ce cas spécifique, les éléments requis Le tableau JSON doit suivre une structure spécifique :
[ { 'id': 111, 'title': "Event1", 'start': "2023-08-10", 'url': "http://yahoo.com/" }, { 'id': 222, 'title': "Event2", 'start': "2023-08-20", 'end': "2023-08-22", 'url': "http://yahoo.com/" } ]
Connexion à la base de données et données Récupération
Pour récupérer les données nécessaires de la base de données MySQL, nous pouvons utiliser une simple instruction de requête comme la suivante :
SELECT * FROM table
En utilisant la fonction mysql_query() de PHP, nous pouvons exécuter la requête et récupérez les lignes de résultat en utilisant mysql_fetch_array() :
$fetch = mysql_query("SELECT * FROM table"); while ($row = mysql_fetch_array($fetch, MYSQL_ASSOC)) { $row_array['id'] = $row['id']; $row_array['col1'] = $row['col1']; $row_array['col2'] = $row['col2']; array_push($return_arr, $row_array); }
Cela remplira le Tableau $return_arr avec des tableaux associatifs contenant les valeurs des colonnes de la base de données.
Construire le tableau JSON
Pour construire le tableau JSON dans le format souhaité, nous pouvons parcourir le $ return_arr et créez des objets JSON individuels :
$json_array = array(); foreach ($return_arr as $row) { $json_array[] = array( 'id' => $row['id'], 'title' => $row['col1'], 'start' => "$year-$month-10", 'url' => "http://yahoo.com/" ); }
Dans cet exemple, nous avons codé en dur les valeurs de début et d'url pour simplicité. Vous pouvez modifier ces valeurs pour les remplir dynamiquement à partir de la base de données.
Encodage et sortie
Enfin, nous pouvons encoder le $json_array dans une chaîne JSON en utilisant json_encode() :
echo json_encode($json_array);
Cela affichera une chaîne JSON qui pourra être utilisée par le composant FullCalendar pour restituer les événements dynamiquement.
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!