Dans PHP, lorsque nous utilisons l'extension MySQLI pour effectuer des requêtes de base de données, nous devons généralement savoir combien de champs (colonnes) sont inclus dans l'ensemble de résultats de retour. Ceci est particulièrement utile lorsque vous devez traiter les résultats de la requête dynamiquement, tels que la construction de tables ou l'exportation de données.
mysqli_result :: field_count est une propriété de la classe mysqli_result , utilisée pour obtenir le nombre total de champs dans l'ensemble de résultats de requête. Cet article présentera son utilisation et vous aidera à mieux le comprendre avec des exemples de code.
mysqli_result :: field_count est une propriété en lecture seule qui représente le nombre de champs dans l'ensemble de résultats de requête. Notez que ce nombre est le nombre de colonnes, et non le nombre de lignes renvoyées.
grammaire:
$number_of_fields = $result->field_count;
Où $ Result est l'objet MySQLI_RESULT renvoyé par MySQLI_Query ou $ mysqli-> query () .
Voici un exemple complet montrant comment utiliser mysqli_result :: field_count pour obtenir le nombre de champs dans le résultat de la requête.
<?php
// Informations sur la connexion de la base de données
$host = 'localhost';
$user = 'root';
$password = 'your_password';
$database = 'your_database';
// Créer une connexion
$mysqli = new mysqli($host, $user, $password, $database);
// Vérifiez si la connexion réussit
if ($mysqli->connect_error) {
die('Échec de la connexion: ' . $mysqli->connect_error);
}
// Exécuter une requête
$query = "SELECT id, name, email FROM users";
$result = $mysqli->query($query);
// Vérifiez si la requête est réussie
if ($result) {
// Obtenez le nombre de champs
$field_count = $result->field_count;
echo "Le nombre de champs contenus dans le résultat de la requête: $field_count\n";
// Facultatif:Noms de champ de traversée
while ($field = $result->fetch_field()) {
echo "Nom de champ: " . $field->name . "\n";
}
// Libérez l'ensemble de résultats
$result->free();
} else {
echo "La requête a échoué: " . $mysqli->error;
}
// Fermer la connexion
$mysqli->close();
?>
Nous nous connectons à la base de données et exécutons une requête sélectionnée .
Obtenez le nombre total de champs retournés via $ result-> field_count .
Utilisez la méthode fetch_field () pour traverser les détails du champ et sortir le nom de chaque champ.
Enfin, relâchez le jeu de résultats et fermez la connexion de la base de données.
Rendu dynamique de la table : lorsque vous devez rendre le résultat de la requête sur une page Web en tant que table, sachant que le nombre de colonnes à l'avance peut vous aider à générer la tête dynamiquement.
Outil d'exportation : lors de l'exportation de CSV et Excel, vous devez traverser le nom du champ comme première ligne.
Débogage et journalisation : Pendant la phase de développement, l'enregistrement du nombre de champs renvoyés par la requête aide à dépanner les erreurs.