PDO(PHP Data Objects)和MySQLi(MySQL Improved Extension)都是PHP中用于与数据库进行交互的扩展。它们提供了不同的接口和方法来执行SQL查询和管理数据库连接。
问题描述:在尝试使用PDO时,发现PDO扩展未开启。
解决方法:
php.ini
)。;
):;
):phpinfo()
函数检查PDO扩展是否已启用。问题描述:在尝试使用MySQLi时,发现MySQLi扩展未开启。
解决方法:
php.ini
)。;
):;
):phpinfo()
函数检查MySQLi扩展是否已启用。<?php
try {
$pdo = new PDO('mysql:host=localhost;dbname=test', 'username', 'password');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $pdo->prepare('SELECT * FROM users WHERE id = :id');
$stmt->execute(['id' => 1]);
$user = $stmt->fetch(PDO::FETCH_ASSOC);
echo 'User: ' . $user['name'];
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
?>
<?php
$mysqli = new mysqli('localhost', 'username', 'password', 'test');
if ($mysqli->connect_errno) {
echo 'Failed to connect to MySQL: ' . $mysqli->connect_error;
exit();
}
$stmt = $mysqli->prepare('SELECT * FROM users WHERE id = ?');
$stmt->bind_param('i', $id);
$id = 1;
$stmt->execute();
$result = $stmt->get_result();
$user = $result->fetch_assoc();
echo 'User: ' . $user['name'];
$mysqli->close();
?>
通过以上信息,你应该能够了解PDO和MySQLi的基础概念、优势、类型、应用场景以及如何解决常见问题。
领取专属 10元无门槛券
手把手带您无忧上云