Dans PHP, si nous utilisons une base de données MySQL pour les opérations de requête, nous utilisons généralement l'extension MySQLI pour effectuer des requêtes SQL. Après avoir exécuté la requête, nous devrons peut-être fusionner tous les résultats d'une certaine colonne dans une chaîne pour le traitement ultérieur. À l'heure actuelle, les fonctions MySQLI_RESULT et IMPLODE () sont des outils très utiles.
Cet article montrera comment obtenir les résultats de la requête via mysqli_result et utiliser la fonction implode () pour connecter une colonne de données dans les résultats de la requête.
Tout d'abord, nous devons nous connecter à la base de données MySQL. Ici, supposons que vous avez configuré la base de données MySQL sur le serveur.
<?php
$servername = "localhost"; // Adresse du serveur de base de données
$username = "root"; // Nom d'utilisateur de base de données
$password = ""; // Mot de passe de base de données
$dbname = "test_db"; // Nom de la base de données utilisée
// Créer une connexion
$conn = new mysqli($servername, $username, $password, $dbname);
// Vérifiez si la connexion réussit
if ($conn->connect_error) {
die("Échec de la connexion: " . $conn->connect_error);
}
?>
Ensuite, nous devons exécuter la requête SQL et obtenir les résultats. Supposons que nous ayons un tableau appelé utilisateurs , et il y a une colonne dans le tableau par e-mail , et nous voulons épice les adresses e-mail de toutes les utilisateurs dans une chaîne.
<?php
// Exécuter une requête
$sql = "SELECT email FROM users";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// Créez un tableau vide pour enregistrer les résultats de la requête email
$emails = array();
// Résultats de la requête de traversée,Mettre chacun email Économiser dans le tableau
while ($row = $result->fetch_assoc()) {
$emails[] = $row['email'];
}
// utiliser implode() Les fonctions seront tout le tableau email Concaténer en une chaîne
$emailList = implode(", ", $emails);
echo "Adresse e-mail de tous les utilisateurs: " . $emailList;
} else {
echo "Aucune donnée n'a été trouvée";
}
$conn->close();
?>
$ Conn-> Query ($ SQL) : Cette ligne de code exécute une requête et enregistre la requête en résulte la variable de résultat $ .
$ result-> fetch_assoc () : Cette ligne de code obtient chaque ligne de données du résultat de la requête. Nous ajoutons les données de la colonne d'e-mail à un tableau $ e-mails par boucle.
Implode (",", $ e-mail) : La fonction implode () conca3ne tous les éléments du tableau (c'est-à-dire l'adresse e-mail de l'utilisateur) dans une chaîne avec des virgules et des espaces.
S'il n'y a pas de données dans le résultat de la requête, $ result-> num_rows reviendra 0 et nous devons porter des jugements appropriés.
Lorsque vous utilisez MySQLI_RESULT pour obtenir les résultats de la requête, assurez-vous que les résultats renvoyés par la requête SQL sont valides.
<?php
$servername = "localhost"; // Adresse du serveur de base de données
$username = "root"; // Nom d'utilisateur de base de données
$password = ""; // Mot de passe de base de données
$dbname = "test_db"; // Nom de la base de données utilisée
// Créer une connexion
$conn = new mysqli($servername, $username, $password, $dbname);
// Vérifiez si la connexion réussit
if ($conn->connect_error) {
die("Échec de la connexion: " . $conn->connect_error);
}
// Exécuter une requête
$sql = "SELECT email FROM users";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// Créez un tableau vide pour enregistrer les résultats de la requête email
$emails = array();
// Résultats de la requête de traversée,Mettre chacun email Économiser dans le tableau
while ($row = $result->fetch_assoc()) {
$emails[] = $row['email'];
}
// utiliser implode() Les fonctions seront tout le tableau email Concaténer en une chaîne
$emailList = implode(", ", $emails);
echo "Adresse e-mail de tous les utilisateurs: " . $emailList;
} else {
echo "Aucune donnée n'a été trouvée";
}
$conn->close();
?>
En combinant les fonctions MySQLI_RESULT et IMPLODE () , nous pouvons facilement obtenir une colonne de données dans le résultat de la requête et la concaténer dans une chaîne. Ces méthodes sont très utiles lors du traitement de grandes quantités de données, en particulier lorsque vous devez transmettre les résultats de la requête à d'autres systèmes ou effectuer un traitement supplémentaire de données.