PHP前端开发

PHP 函数的数据库操作高级技术

百变鹏仔 2天前 #PHP
文章标签 函数

php 提供了高级数据库操作函数,涵盖以下功能:连接数据库(mysqli_connect()、pdo)执行 sql 查询(mysqli_query()、pdo::query())获取查询结果(mysqli_fetch_assoc()、pdo::fetch())插入数据(mysqli_query()、pdo::exec())更新数据(mysqli_query()、pdo::exec())删除数据(mysqli_query()、pdo::exec())事务处理(mysqli_begin_transaction()、mysqli_rollback()、mysqli_commit())

PHP 函数的数据库操作高级技术

PHP 提供了一系列强大而灵活的函数,使开发者能够轻松有效地与数据库交互。这些函数为数据库操作提供了广泛的功能,从简单的插入和检索到复杂的连接管理和事务处理。

一、连接数据库

立即学习“PHP免费学习笔记(深入)”;

连接数据库是与数据库进行交互的基础。PHP 提供了以下函数进行连接操作:

// 使用 mysqli 函数连接到 MySQL 数据库$conn = mysqli_connect('localhost', 'root', '', 'my_database');// 使用 PDO 函数连接到 MySQL 数据库$conn = new PDO('mysql:host=localhost;dbname=my_database', 'root', '');

二、执行 SQL 查询

连接数据库后,可以使用 PHP 函数执行 SQL 查询:

// 使用 mysqli_query() 函数执行查询$result = mysqli_query($conn, "SELECT * FROM users");// 使用 PDO::query() 函数执行查询$result = $conn->query("SELECT * FROM users");

三、获取查询结果

执行查询后,可以通过以下方式获取结果:

// 使用 mysqli_fetch_assoc() 函数获取关联数组结果$row = mysqli_fetch_assoc($result);// 使用 PDO::fetch() 函数获取关联数组结果$row = $result->fetch(PDO::FETCH_ASSOC);

四、插入数据

使用以下函数插入数据到数据库:

// 使用 mysqli_query() 函数插入数据$result = mysqli_query($conn, "INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com')");// 使用 PDO::exec() 函数插入数据$result = $conn->exec("INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com')");

五、更新数据

// 使用 mysqli_query() 函数更新数据$result = mysqli_query($conn, "UPDATE users SET name = 'John Smith' WHERE id = 1");// 使用 PDO::exec() 函数更新数据$result = $conn->exec("UPDATE users SET name = 'John Smith' WHERE id = 1");

六、删除数据

// 使用 mysqli_query() 函数删除数据$result = mysqli_query($conn, "DELETE FROM users WHERE id = 1");// 使用 PDO::exec() 函数删除数据$result = $conn->exec("DELETE FROM users WHERE id = 1");

七、事务处理

// 开始事务mysqli_begin_transaction($conn);// 执行操作mysqli_query($conn, "INSERT INTO accounts (balance) VALUES (1000)");// 如果操作失败,回滚事务if (mysqli_errno($conn)) {    mysqli_rollback($conn);} else {    mysqli_commit($conn);}

实战案例

以下是如何使用 PHP 函数从数据库中获取用户列表:

$conn = mysqli_connect('localhost', 'root', '', 'my_database');$result = mysqli_query($conn, "SELECT * FROM users");while ($row = mysqli_fetch_assoc($result)) {    echo $row['name'] . ' (' . $row['email'] . ')<br>';}