Maison >développement back-end >Problème PHP >Comment convertir les résultats d'une requête en tableau en php (trois méthodes)

Comment convertir les résultats d'une requête en tableau en php (trois méthodes)

PHPz
PHPzoriginal
2023-04-04 17:17:241124parcourir

En PHP, les résultats des requêtes sont parfois renvoyés sous différentes formes, qui peuvent être un objet ou un tableau. Parfois, le résultat souhaité est un tableau. Par conséquent, voici plusieurs méthodes pour convertir les résultats de requête en tableaux afin de rendre les résultats de requête plus conformes à nos besoins.

  1. Méthode fetch_assoc() La méthode

fetch_assoc() renvoie un tableau associatif, où le nom de la clé est le nom du champ dans la base de données et la valeur de la clé est la valeur correspondante dans l'enregistrement. La méthode fetch_assoc() renvoie une ligne de données à partir du résultat de la requête. L'appel de cette méthode une fois ne peut renvoyer qu'une seule ligne. Si vous souhaitez lire d'autres lignes, vous devez appeler à nouveau cette méthode.

L'exemple de code est le suivant :

// 假设 $conn 是 MySQL 数据库连接对象
$sql = "SELECT id, name, age FROM users";
$result = $conn->query($sql);

// fetch_assoc 方法返回一个关联数组
while ($row = $result->fetch_assoc()) {
    echo $row['id'] , $row['name'] , $row['age'];
}
  1. méthode fetch_array()

fetch_array() renvoie un tableau contenant à la fois des index numériques et associatifs, ce qui est similaire à une combinaison d'un tableau associatif et d'un tableau d'index. L'index numérique correspond à l'index de la colonne dans le résultat de la requête, et l'index associé correspond au nom du champ dans la base de données. Cette méthode est similaire à la méthode fetch_assoc(), sauf que le tableau renvoyé est différent.

L'exemple de code est le suivant :

// 假设 $conn 是 MySQL 数据库连接对象
$sql = "SELECT id, name, age FROM users";
$result=$conn->query($sql);

// fetch_array 方法返回一个包含关联和数字索引的数组
while ($row = $result->fetch_array()) {
    echo $row['id'] , $row['name'] , $row['age'];
}
  1. méthode fetch_all()

fetch_all() renvoie un ensemble de résultats complet. Cette méthode doit être utilisée dans la version d'extension mysqli 5.3.0 ou supérieure et ne prend en charge que le. utilisation du pilote d'extension MySQL. Le résultat renvoyé est un tableau bidimensionnel, chaque sous-tableau est une ligne de données et les éléments du sous-tableau correspondent à chaque champ de la ligne d'enregistrements. L'utilisation de cette méthode peut simplifier le code.

L'exemple de code est le suivant :

// 假设 $conn 是 MySQL 数据库连接对象
$sql = "SELECT id, name, age FROM users";
$result = $conn->query($sql);

// fetch_all 方法返回一个二维数组
$data = $result->fetch_all();
foreach ($data as $row) {
    echo $row[0] , $row[1], $row[2];
}

Résumé

Utilisez la méthode fetch_assoc() pour obtenir un tableau associatif avec le nom du champ comme nom de clé, utilisez la méthode fetch_array() pour renvoyer un tableau qui contient les deux index numériques et des index associatifs, et la méthode fetch_all () peut renvoyer directement un tableau bidimensionnel de l'ensemble des résultats. En fonction de la situation spécifique, choisir d'utiliser différentes méthodes pour obtenir le tableau des résultats de la requête peut nous aider à exploiter les données plus facilement.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn