mysqli
和 PDO
(PHP Data Objects)都是 PHP 中用于连接和操作数据库的扩展。它们各有优势和适用场景,以下是对两者的详细比较:
$mysqli = new mysqli("localhost", "user", "password", "database");
if ($mysqli->connect_error) {
die("连接失败: " . $mysqli->connect_error);
}
$sql = "SELECT id, name FROM users WHERE id = ?";
$stmt = $mysqli->prepare($sql);
$stmt->bind_param("i", $id);
$id = 1;
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . " - Name: " . $row["name"] . "<br>";
}
$stmt->close();
$mysqli->close();
$dsn = "mysql:host=localhost;dbname=database";
$user = "user";
$password = "password";
try {
$pdo = new PDO($dsn, $user, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "SELECT id, name FROM users WHERE id = :id";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':id', $id);
$id = 1;
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($result as $row) {
echo "ID: " . $row["id"] . " - Name: " . $row["name"] . "<br>";
}
} catch (PDOException $e) {
echo "数据库连接失败: " . $e->getMessage();
}
$pdo = null;
选择 mysqli
还是 PDO
取决于你的具体需求,如果你只需要操作 MySQL 数据库且追求高性能,可以选择 mysqli
;如果你需要支持多种数据库或更注重代码的可移植性和安全性,建议选择 PDO
。
TVP技术夜未眠
第135届广交会企业系列专题培训
第136届广交会企业系列专题培训
高校公开课
高校公开课
小程序·云开发官方直播课(数据库方向)
视频云直播活动
云+社区沙龙online第5期[架构演进]
云+社区沙龙online第6期[开源之道]
领取专属 10元无门槛券
手把手带您无忧上云