Maison  >  Article  >  développement back-end  >  Explication détaillée des différentes méthodes pour interroger toutes les données des tables PHP

Explication détaillée des différentes méthodes pour interroger toutes les données des tables PHP

PHPz
PHPzoriginal
2023-04-04 17:28:093102parcourir

Dans le développement d'un projet réel, il est souvent nécessaire d'interroger toutes les données d'un tableau. En réponse à ce besoin, PHP propose plusieurs méthodes différentes, qui seront décrites en détail dans cet article.

1. Utilisez la fonction mysql_query pour interroger des données

La fonction mysql_query est une fonction très courante qui peut gérer les requêtes, les insertions, les mises à jour et d'autres opérations de la base de données MySQL. Pour interroger toutes les données d'une table, utilisez simplement l'instruction SELECT :

$sql = "SELECT * FROM table_name";
$result = mysql_query($sql);

Parmi elles, table_name est le nom de la table que vous souhaitez interroger, et SELECT * signifie interroger tous les champs et données de ligne de la table. Une fois la fonction mysql_query exécutée, $result enregistrera les résultats de la requête et les données pourront être lues ligne par ligne via la fonction mysql_fetch_array :

while ($row = mysql_fetch_array($result)) {
  // 这里处理每一行数据
}

La fonction mysql_fetch_array renverra un tableau contenant les données de la ligne actuelle. S'il n'y a plus de données dans la ligne actuelle, la boucle while s'arrêtera.

2. Utilisez la fonction mysqli_query pour interroger des données

La fonction mysqli_query est une nouvelle fonction introduite dans PHP5. Elle a des fonctions similaires à la fonction mysql_query et peut également être utilisée pour effectuer des opérations de requête, d'insertion et de mise à jour MySQL. Cependant, la fonction mysqli_query est plus sécurisée et plus efficace à utiliser que la fonction mysql_query, nous vous recommandons donc d'utiliser la fonction mysqli_query. Différente de la fonction mysql_query, la fonction mysqli_query doit être connectée à la base de données avant de pouvoir être utilisée. Voici un exemple :

$mysqli = new mysqli("localhost", "user", "password", "database_name");
if ($mysqli->connect_error) {
    die("连接失败: " . $mysqli->connect_error);
}

$sql = "SELECT * FROM table_name";
$result = $mysqli->query($sql);

où localhost est l'adresse du serveur MySQL, user et password sont le nom d'utilisateur et le mot de passe utilisés pour se connecter à la base de données, et database_name est le nom de la base de données à connecter.

Après avoir exécuté la fonction mysqli_query, les données peuvent être lues ligne par ligne via la fonction mysqli_fetch_array :

while ($row = mysqli_fetch_array($result)) {
   // 这里处理每一行数据
}

Les données obtenues via la fonction mysqli_fetch_array sont similaires aux données obtenues par la fonction mysql_fetch_array.

3. Utilisez PDO pour interroger des données

PDO est une méthode d'accès aux bases de données populaire en PHP. Elle peut interagir avec une variété de bases de données, notamment MySQL, SQLite, PostgreSQL, etc. Les étapes pour utiliser PDO pour interroger des données sont les suivantes :

$dsn = "mysql:host=localhost;dbname=mydatabase";
$username = "myusername";
$password = "mypassword";

try {
  $pdo = new PDO($dsn, $username, $password);
} catch (PDOException $e) {
  die("连接失败: " . $e->getMessage());
}

$sql = "SELECT * FROM table_name";
$result = $pdo->query($sql);

Il convient de noter que, contrairement à mysqli_query, l'utilisation de PDO nécessite de spécifier le type de base de données et l'adresse de l'hôte. Dans le code ci-dessus, nous utilisons la base de données MySQL, localhost est l'adresse de l'hôte, mydatabase est le nom de la base de données à connecter, myusername et mypassword sont le nom d'utilisateur et le mot de passe utilisés pour se connecter à MySQL.

Après avoir exécuté la fonction $pdo->query, les données peuvent être lues ligne par ligne via les fonctions fetch et fetchall :

while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
  // 这里处理每一行数据
}

Les fonctions fetch et fetchall sont similaires aux fonctions mysql_fetch_array et mysqli_fetch_array et peuvent obtenir chaque ligne de données.

Il convient de noter que la fonction PDO renvoie un tableau contenant toutes les lignes de résultats Même si l'ensemble de résultats n'a qu'une seule ligne, il est considéré comme un tableau de longueur 1. Une seule ligne de données peut être obtenue via fetchone.

Résumé

Les trois méthodes ci-dessus peuvent toutes interroger toutes les données d'une table, mais leurs méthodes d'utilisation sont légèrement différentes. mysql_query et mysqli_query nécessitent une connexion au serveur MySQL et utilisent mysql_connect ou mysqli_connect pour vous connecter à la base de données. PDO peut utiliser plusieurs types de bases de données et se connecter au serveur via DSN.

Lorsque vous choisissez d'utiliser différentes méthodes, vous devez choisir en fonction des besoins réels et de la familiarité avec les différentes méthodes afin d'obtenir la plus grande efficacité de développement et d'accès à la base de données.

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