>  기사  >  백엔드 개발  >  PHP 데이터베이스 쿼리 횟수

PHP 데이터베이스 쿼리 횟수

WBOY
WBOY원래의
2023-05-06 21:26:08616검색

PHP는 웹 개발에 널리 사용되는 언어이며 중요한 기능 중 하나는 데이터베이스와 상호 작용하는 것입니다. 웹 사이트나 애플리케이션에서는 사용자 인터페이스에 정보를 표시하고 페이징 및 정렬과 같은 논리적 작업을 수행하기 위해 데이터를 쿼리하고 계산해야 하는 경우가 많습니다. 이 기사에서는 PHP에서 데이터베이스 쿼리를 수행하고 계산하는 방법에 대해 설명합니다.

데이터베이스 쿼리

PHP에서 데이터베이스 쿼리를 실행하려면 일반적으로 MySQLi 또는 PDO와 같은 데이터베이스 확장 라이브러리를 사용해야 합니다. 다음은 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();
?>

위의 예에서는 MySQLi 확장 라이브러리를 사용하여 데이터베이스에 연결하고 쿼리 결과를 사용자 인터페이스에 출력합니다. 먼저, 새로운 mysqli() 함수를 사용하여 localhost(localhost), 사용자 이름, 비밀번호 및 데이터베이스 이름을 포함하는 연결 개체를 생성합니다. 그런 다음 $query->query() 메서드를 사용하여 SQL 쿼리를 실행하고 결과를 $result 변수에 저장합니다. 쿼리 결과는 일반적으로 데이터 세트입니다. $result->num_rows 속성을 통해 결과에 몇 개의 데이터가 있는지 알 수 있습니다. 마지막으로 while 루프를 사용하여 데이터를 한 줄씩 출력하고 $result->fetch_assoc() 메서드를 사용하여 각 데이터 줄의 연관 배열을 얻을 수 있습니다.

MySQLi 확장 라이브러리와 유사하게 PDO 라이브러리는 데이터베이스 쿼리를 실행하는 데에도 사용할 수 있습니다. 예는 다음과 같습니다.

<?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;
?>

MySQLi 확장 라이브러리와 비교하여 PDO 라이브러리에는 prepare( ) 및 Execute()를 사용하여 쿼리를 준비 및 실행하고 fetchAll() 메서드를 사용하여 쿼리 결과를 가져옵니다. MySQLi 확장 라이브러리와 마찬가지로 foreach 루프를 사용하여 결과 배열을 반복하고 연관 배열의 키를 사용하여 데이터의 각 행을 가져올 수 있습니다.

데이터베이스 수

데이터세트의 항목 수를 표시하려면 쿼리 결과의 행 수를 가져오는 몇 가지 특수 쿼리를 수행해야 합니다. MySQL에서는 COUNT() 함수를 사용하여 행 수를 가져올 수 있습니다. 예는 다음과 같습니다.

<?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();
?>

위 예에서는 COUNT() 함수를 사용하여 사용자 테이블의 행 수를 가져옵니다. 결과를 $count 변수에 저장합니다. COUNT() 함수에 의해 반환된 결과는 COUNT(*)라는 열이기 때문에 $result->fetch_assoc() 메서드를 사용하여 행 수를 가져올 수 있습니다. 마지막으로 사용자 인터페이스에 개수를 출력합니다.

마찬가지로 PDO에서 rowCount() 메서드를 사용하여 행 수를 가져올 수 있습니다. 예는 다음과 같습니다.

<?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;
?>

위 예에서는 rowCount() 메서드를 사용하여 PDO의 행 수를 가져옵니다. 결과 집합을 쿼리하고 결과를 $count 변수에 저장합니다. 데이터 행을 가져오는 것과 유사하게 PDOStatement 개체의 fetch() 또는 fetchAll() 메서드를 호출하여 결과 집합의 행 컬렉션을 가져올 수 있습니다.

결론

이 기사에서는 PHP에서 데이터베이스 쿼리 및 계산을 수행하는 방법을 소개했습니다. 우리는 MySQLi와 PDO 확장 라이브러리를 사용하여 데이터베이스에 연결하고 쿼리와 계산을 수행하는 방법을 배웠습니다. 또한 쿼리 결과에서 행 데이터를 가져오고 결과를 사용자 인터페이스에 출력하는 방법도 논의했습니다. 이 팁은 웹 기반 애플리케이션 및 웹사이트를 개발하는 개발자에게 매우 유용합니다.

위 내용은 PHP 데이터베이스 쿼리 횟수의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.