PHP PDO — 数据库安全操作
PDO + Prepared Statements:防 SQL 注入的标准方式 · 难度:进阶 · +20XP
PDO — PHP 操作数据库
PDO(PHP Data Objects)是 PHP 连接数据库的统一接口。MySQL、PostgreSQL、SQLite 都用同一套 API。
连接数据库
$pdo = new PDO("mysql:host=localhost;dbname=myapp;charset=utf8mb4", "root", "pass", [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
]);
查询(带参数的 Prepared Statement)
$stmt = $pdo->prepare("SELECT * FROM users WHERE age > ?");
$stmt->execute([18]);
$users = $stmt->fetchAll();
增删改
// INSERT
$stmt = $pdo->prepare("INSERT INTO users (name, age) VALUES (?, ?)");
$stmt->execute(["张三", 25]);
// UPDATE
$stmt = $pdo->prepare("UPDATE users SET age = ? WHERE id = ?");
$stmt->execute([26, 1]);
// DELETE
$stmt = $pdo->prepare("DELETE FROM users WHERE id = ?");
$stmt->execute([1]);
⚠️ 永远用 Prepared Statements!不要把用户输入直接拼进 SQL。