Maison  >  Article  >  développement back-end  >  nombre de requêtes de base de données php

nombre de requêtes de base de données php

WBOY
WBOYoriginal
2023-05-06 21:26:08572parcourir

PHP est un langage largement utilisé pour le développement Web, et l'une de ses fonctions importantes est d'interagir avec des bases de données. Dans un site Web ou une application, les données doivent souvent être interrogées et comptées afin d'afficher des informations sur l'interface utilisateur et d'effectuer des opérations logiques telles que la pagination et le tri. Dans cet article, nous verrons comment effectuer des requêtes de base de données et compter en PHP.

Requête de base de données

En PHP, l'exécution de requêtes de base de données nécessite généralement l'utilisation d'une bibliothèque d'extension de base de données telle que MySQLi ou PDO. Voici un exemple d'interrogation utilisant MySQLi :

<?php
  //连接到数据库
  $conn = new mysqli("localhost", "username", "password", "database_name");

  //检查连接是否成功
  if ($conn->connect_error) {
    die("连接失败:" . $conn->connect_error);
  }

  //执行查询
  $sql = "SELECT * FROM user";
  $result = $conn->query($sql);

  //检查查询结果
  if ($result->num_rows > 0) {
    //输出每一行数据
    while($row = $result->fetch_assoc()) {
      echo "Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
    }
  } else {
    echo "没有数据";
  }

  //关闭数据库连接
  $conn->close();
?>

Dans l'exemple ci-dessus, nous utilisons la bibliothèque d'extension MySQLi pour nous connecter à la base de données et afficher les résultats de la requête sur l'interface utilisateur. Tout d'abord, nous utilisons la nouvelle fonction mysqli() pour créer un objet de connexion, qui comprend localhost (localhost), le nom d'utilisateur, le mot de passe et le nom de la base de données. Nous exécutons ensuite la requête SQL à l'aide de la méthode $query->query() et stockons les résultats dans la variable $result. Le résultat de la requête est généralement un ensemble de données. Vous pouvez connaître le nombre de données contenues dans le résultat via l'attribut $result->num_rows. Enfin, nous pouvons utiliser une boucle while pour afficher les données ligne par ligne et utiliser la méthode $result->fetch_assoc() pour obtenir le tableau associatif de chaque ligne de données.

Semblable à la bibliothèque d'extension MySQLi, la bibliothèque PDO peut également être utilisée pour exécuter des requêtes de base de données, un exemple est le suivant :

<?php
  //连接到数据库
  $conn = new PDO("mysql:host=localhost;dbname=database_name", "username", "password");

  //执行查询
  $sql = "SELECT * FROM user";
  $stmt = $conn->prepare($sql);
  $stmt->execute();

  //获取查询结果
  $result = $stmt->fetchAll(PDO::FETCH_ASSOC);

  //检查查询结果
  if (count($result) > 0) {
    //输出每一行数据
    foreach($result as $row) {
      echo "Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
    }
  } else {
    echo "没有数据";
  }

  //关闭连接
  $conn = null;
?>

Par rapport à la bibliothèque d'extension MySQLi, la bibliothèque PDO a des méthodes différentes, telles que l'utilisation de prepare( ) et execute() pour préparer et exécuter la requête et obtenir les résultats de la requête à l'aide de la méthode fetchAll(). Comme la bibliothèque d'extension MySQLi, nous pouvons utiliser une boucle foreach pour parcourir le tableau de résultats et obtenir chaque ligne de données en utilisant la clé du tableau associatif.

Nombre de bases de données

Afin d'afficher le nombre d'entrées dans l'ensemble de données, nous devons effectuer des requêtes spéciales pour obtenir le nombre de lignes dans les résultats de la requête. Dans MySQL, vous pouvez utiliser la fonction COUNT() pour obtenir le nombre de lignes. L'exemple est le suivant :

<?php
  //连接到数据库
  $conn = new mysqli("localhost", "username", "password", "database_name");

  //执行查询
  $sql = "SELECT COUNT(*) FROM user";
  $result = $conn->query($sql);
  $count = $result->fetch_assoc()["COUNT(*)"];

  //输出结果
  echo "共有 " . $count . " 条数据";

  //关闭数据库连接
  $conn->close();
?>

Dans l'exemple ci-dessus, nous utilisons la fonction COUNT() pour obtenir le nombre de lignes dans la table utilisateur et stockez le résultat dans la variable $count. Notez que nous pouvons utiliser la méthode $result->fetch_assoc() pour obtenir le nombre de lignes, car le résultat renvoyé par la fonction COUNT() est une colonne nommée COUNT(*). Enfin, nous affichons le décompte sur l’interface utilisateur.

De même, nous pouvons utiliser la méthode rowCount() dans PDO pour obtenir le nombre de lignes. L'exemple est le suivant :

<?php
  //连接到数据库
  $conn = new PDO("mysql:host=localhost;dbname=database_name", "username", "password");

  //执行查询
  $sql = "SELECT * FROM user";
  $stmt = $conn->prepare($sql);
  $stmt->execute();

  //获取查询结果
  $result = $stmt->fetchAll(PDO::FETCH_ASSOC);
  $count = $stmt->rowCount();

  //输出结果
  echo "共有 " . $count . " 条数据";

  //关闭连接
  $conn = null;
?>

Dans l'exemple ci-dessus, nous utilisons la méthode rowCount() pour obtenir le nombre de lignes dans le. ensemble de résultats de requête et stockez les résultats dans la variable $count. Semblable à l'obtention de lignes de données, nous pouvons obtenir la collection de lignes de l'ensemble de résultats en appelant la méthode fetch() ou fetchAll() de l'objet PDOStatement.

Conclusion

Dans cet article, nous avons présenté comment effectuer des requêtes de base de données et compter en PHP. Nous avons appris à utiliser MySQLi et la bibliothèque d'extensions PDO pour nous connecter à une base de données et effectuer des requêtes et des décomptes. Nous avons également expliqué comment obtenir des données de ligne à partir des résultats de requête et afficher les résultats sur l'interface utilisateur. Ces conseils sont très utiles pour les développeurs développant des applications et des sites Web Web.

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