PHP 数据库读写操作详解193


PHP 作为一种强大的 Web 编程语言,提供了广泛的数据库操作功能,使开发者能够轻松地与数据库进行交互,实现数据的存储、检索和更新。本文将详细介绍 PHP 数据库读写操作,包括连接数据库、执行查询、处理结果和关闭连接等各个方面。

连接数据库

要连接到数据库,可以使用以下语法:```php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接是否成功
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
```

在这个示例中,我们创建了一个到名为 "myDB" 的数据库的连接,使用 "root" 用户名和空密码。如果连接成功,它将返回一个 mysqli 对象,否则它将退出并显示错误。

执行查询

要执行查询,可以使用以下语法:```php
// 执行查询
$result = $conn->query("SELECT * FROM users");
// 检查查询是否成功
if (!$result) {
die("查询失败: " . $conn->error);
}
```

在这个示例中,我们执行一个查询来选择 "users" 表中的所有数据。如果查询成功,它将返回一个 mysqli_result 对象,否则它将退出并显示错误。

处理结果

要处理查询结果,可以使用以下方法:
mysqli_fetch_assoc():获取结果集中下一行作为关联数组。
mysqli_fetch_array():获取结果集中下一行作为索引数组或关联数组。
mysqli_fetch_object():获取结果集中下一行作为对象。
mysqli_fetch_row():获取结果集中下一行作为数字索引数组。

例如,要获取结果集中第一行:```php
$row = $result->fetch_assoc();
```

要循环遍历结果集:```php
while ($row = $result->fetch_assoc()) {
// 处理数据
}
```

插入数据

要插入数据,可以使用以下语法:```php
// 准备插入语句
$stmt = $conn->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
// 绑定参数
$stmt->bind_param("ss", $name, $email);
// 设置参数值
$name = "John Doe";
$email = "john@";
// 执行插入语句
$stmt->execute();
// 检查插入是否成功
if ($stmt->affected_rows > 0) {
echo "数据插入成功";
} else {
echo "数据插入失败";
}
```

在这个示例中,我们准备并执行了一个插入语句来将一行数据插入 "users" 表中。我们使用绑定参数来防止 SQL 注入攻击。

更新数据

要更新数据,可以使用以下语法:```php
// 准备更新语句
$stmt = $conn->prepare("UPDATE users SET name = ?, email = ? WHERE id = ?");
// 绑定参数
$stmt->bind_param("ssi", $name, $email, $id);
// 设置参数值
$name = "Jane Doe";
$email = "jane@";
$id = 1;
// 执行更新语句
$stmt->execute();
// 检查更新是否成功
if ($stmt->affected_rows > 0) {
echo "数据更新成功";
} else {
echo "数据更新失败";
}
```

在这个示例中,我们准备并执行了一个更新语句来更新 "users" 表中的一行数据。我们使用绑定参数来防止 SQL 注入攻击。

删除数据

要删除数据,可以使用以下语法:```php
// 准备删除语句
$stmt = $conn->prepare("DELETE FROM users WHERE id = ?");
// 绑定参数
$stmt->bind_param("i", $id);
// 设置参数值
$id = 1;
// 执行删除语句
$stmt->execute();
// 检查删除是否成功
if ($stmt->affected_rows > 0) {
echo "数据删除成功";
} else {
echo "数据删除失败";
}
```

在这个示例中,我们准备并执行了一个删除语句来从 "users" 表中删除一行数据。我们使用绑定参数来防止 SQL 注入攻击。

关闭连接

最后,在完成所有数据库操作后,重要的是关闭数据库连接:```php
// 关闭连接
$conn->close();
```

2024-12-09


上一篇:PHP 获取数组第一个元素的详细指南

下一篇:PHP 与数据库交互最佳实践