连接建立后,您可以执行 SQL 查询来与数据库交互。PHP 提供了诸如 mysqli_query()
之类的函数或准备好的语句来实现安全高效的查询。
// 使用 MySQLi
// 数据库交互
$query = "SELECT * FROM users";
// 执行查询
$result = mysqli_query($connection, $query);
// 使用 PDO
// 数据库交互
$query = "SELECT * FROM users";
// 预处理查询
$stmt = $pdo->prepare($query);
// 执行查询
$stmt->execute();
您可以使用 PDO 中的“mysqli_fetch_assoc()
”或“fetch()
”等函数从数据库检索数据。
// 使用 MySQLi
// 数据库交互
$result = mysqli_query($connection, "SELECT * FROM products");
// 处理数据
while ($row = mysqli_fetch_assoc($result)) {
// 处理数据
}
// 使用 PDO
// 数据库交互
$stmt = $pdo->prepare("SELECT * FROM products");
$stmt->execute();
// 处理数据
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
// 处理数据
}
PHP 允许您使用 SQL“INSERT”
、“UPDATE
”和“DELETE
”语句添加、修改或删除数据库中的记录。
// 使用 MySQLi
// 数据库交互
$insertQuery = "INSERT INTO products (name, price) VALUES ('Product A', 19.99)";
// 执行查询
mysqli_query($connection, $insertQuery);
// 使用 PDO
// 数据库交互
$insertQuery = "INSERT INTO products (name, price) VALUES ('Product B', 24.99)";
// 执行查询
$pdo->exec($insertQuery);
为了保持最佳性能和资源管理,使用完数据库连接后关闭数据库连接至关重要。
// 使用 MySQLi
mysqli_close($connection);
// 使用 PDO (脚本结束时连接自动关闭)
强大的错误处理对于检测和管理数据库错误至关重要。为此,PHP 提供了诸如 mysqli_error()
之类的函数和 PDO 的异常处理。
// 使用 MySQLi
if (mysqli_error($connection)) {
// Handle the error
// 检查是否发生了任何错误
if (mysqli_error($connection)) {
// 获取错误消息
$error_message = mysqli_error($connection);
// 记录错误消息
error_log($error_message);
// 显示错误消息
echo $error_message;
}
}
// 使用 PDO
try {
// Database interaction
// 数据库交互
$statement = $pdo->prepare('SELECT * FROM users');
$statement->execute();
$results = $statement->fetchAll();
} catch (PDOException $e) {
// Handle the error
// 检查是否发生了任何错误
if ($e) {
// 获取错误消息
$error_message = $e->getMessage();
// 记录错误消息
error_log($error_message);
// 显示错误消息
echo $error_message;
}
}
通过使用准备好的语句、输入验证和适当的身份验证机制来防止 SQL 注入和其他安全威胁,确保数据安全。
PHP 的数据库交互功能使开发人员能够创建数据驱动的 Web 应用程序。掌握这些交互对于构建能够有效存储、检索和操作数据的安全且可靠的 Web 系统至关重要。