PHP Data Objects (PDO) 本身并不直接支持预编译语句,但 PDO 提供了预处理语句的功能,这可以通过使用 PDOStatement 类来实现。预处理语句可以帮助提高性能,因为它们将 SQL 查询模板与数据分开,从而减少了 SQL 注入的风险。
要使用预处理语句,你需要执行以下步骤:
创建一个 PDO 对象,连接到数据库。准备 SQL 查询,创建一个 PDOStatement 对象。绑定参数(可选)到预处理语句。执行预处理语句。获取查询结果(如果需要)。关闭 PDOStatement 和 PDO 对象。以下是一个简单的示例:
<?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;?>在这个示例中,我们使用了预处理语句和参数绑定来查询数据库。这样可以确保查询的安全性,并提高性能。


