Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk melaksanakan pertanyaan pangkalan data menggunakan fungsi terbina dalam PHP?

Bagaimana untuk melaksanakan pertanyaan pangkalan data menggunakan fungsi terbina dalam PHP?

WBOY
WBOYasal
2024-04-23 08:15:01393semak imbas

PHP 内置函数可用于执行数据库查询,包括:mysqli_query():执行查询并返回结果。PDOStatement:准备查询并绑定参数以防止 SQL 注入。mysqli_affected_rows():获取受查询影响的行数(使用 mysqli)。PDOStatement::rowCount():获取受查询影响的行数(使用 PDO)。mysqli_close():关闭 mysqli 数据库连接。PDO:脚本执行完毕后自动关闭 PDO 连接。

如何使用 PHP 内置函数执行数据库查询?

使用 PHP 内置函数执行数据库查询

PHP 提供了大量内置函数,可用于执行数据库查询。本文将介绍如何使用一些常用的 PHP 数据库内置函数,并提供实际示例。

需要的工具:

  • PHP 7 或更高版本
  • MySQL 或其他支持 PDO 的数据库
  • 数据库连接信息

连接到数据库:

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "databasename";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
    die("连接失败:" . $e->getMessage());
}

使用 mysqli_query() 函数查询:

$sql = "SELECT * FROM users";
$result = mysqli_query($conn, $sql);

获取查询结果:

if ($result) {
    while($row = $result->fetch(PDO::FETCH_ASSOC)) {
        echo "ID: " . $row["id"]. "  姓名: " . $row["name"]. "<br>";
    }
}

使用 pdo 查询数据:

该函数的使用方法与 mysqli_query() 函数类似,但需要事先准备一个 PDOStatement 对象。

$stmt = $conn->prepare($sql);
$stmt->execute();

while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
    echo "ID: " . $row["id"]. "  姓名: " . $row["name"]. "<br>";
}

使用 pdo 进行准备查询:

准备查询允许您绑定参数以防止 SQL 注入。

$sql = "INSERT INTO users (name, email) VALUES (?, ?)";
$stmt = $conn->prepare($sql);
$stmt->execute([$name, $email]);

使用 mysqli_affected_rows() 获取受影响的行数:

$num_rows = mysqli_affected_rows($conn);
echo "受影响的行数:" . $num_rows;

使用 PDO 获取受影响的行数:

$num_rows = $stmt->rowCount();
echo "受影响的行数:" . $num_rows;

使用 mysqli_close() 关闭数据库连接:

mysqli_close($conn);

使用 PDO 关闭数据库连接:

不需要手动关闭 PDO 连接。当脚本执行完毕后,它会自动关闭。

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan pertanyaan pangkalan data menggunakan fungsi terbina dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn