PHP Data Objects (PDO) 本身并不直接支持預編譯語句,但 PDO 提供了預處理語句的功能,這可以通過使用 PDOStatement 類來實現。預處理語句可以幫助提高性能,因為它們將 SQL 查詢模板與數據分開,從而減少了 SQL 注入的風險。
要使用預處理語句,你需要執行以下步驟:
以下是一個簡單的示例:
<?php
// 創建 PDO 對象并連接到數據庫
$dsn = "mysql:host=localhost;dbname=testdb";
$username = "username";
$password = "password";
$pdo = new PDO($dsn, $username, $password);
// 準備 SQL 查詢
$sql = "SELECT * FROM users WHERE email = :email AND password = :password";
$stmt = $pdo->prepare($sql);
// 綁定參數
$stmt->bindParam(':email', $email);
$stmt->bindParam(':password', $password);
// 設置參數值
$email = "user@example.com";
$password = "password123";
$stmt->execute();
// 獲取查詢結果
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
// 關閉 PDOStatement 和 PDO 對象
$stmt = null;
$pdo = null;
?>
在這個示例中,我們使用了預處理語句和參數綁定來查詢數據庫。這樣可以確保查詢的安全性,并提高性能。