10个PHP数据库操作函数必知
PHP作为一种脚本语言,被广泛用于开发Web应用程序。在Web应用程序中,数据库操作是必不可少的。因此,掌握PHP数据库操作函数是非常重要的一项技能。在本文中,我将介绍10个PHP数据库操作函数,让您了解其功能和用法。
1. mysqli_connect()
mysqli_connect()函数用于连接MySQL数据库。该函数需要传入4个参数:MySQL服务器主机名、MySQL用户名、MySQL密码和要连接的数据库名称。
例如,假设我们要连接名为“mydb”的MySQL数据库,主机名为“localhost”,用户名为“root”,密码为“123456”,则可以使用以下代码:
$con = mysqli_connect("localhost","root","123456","mydb");
if (!$con)
{
die('Could not connect: ' . mysqli_error());
}
在连接成功后,我们可以使用mysqli_query()函数执行SQL查询语句。
2. mysqli_query()
mysqli_query()函数用于执行SQL查询语句。该函数需要传入2个参数:连接变量和一个SQL查询字符串。
例如,假设我们要查询mydb数据库中的users表中的所有记录,则可以使用以下代码:
$result = mysqli_query($con,"SELECT * FROM users");
在执行查询后,我们可以使用mysqli_fetch_array()函数获取查询结果中的每一行数据。
3. mysqli_fetch_array()
mysqli_fetch_array()函数用于从结果集中取回一行作为关联数组、数值数组或同时返回两者。该函数需要传入1个参数:mysqli_query()函数返回的结果集。
例如,假设我们要获取上面查询的结果集中第一行记录的数据,则可以使用以下代码:
$row = mysqli_fetch_array($result,MYSQLI_ASSOC); echo $row['username'] . " " . $row['email'];
在输出结果后,我们可以使用mysqli_close()函数关闭连接。
4. mysqli_close()
mysqli_close()函数用于关闭MySQL数据库连接。该函数需要传入1个参数:mysqli_connect()函数返回的连接变量。
例如,假设我们在执行完上面的查询后要关闭连接,则可以使用以下代码:
mysqli_close($con);
在关闭连接后,我们可以使用mysqli_error()函数检查是否存在错误。
5. mysqli_error()
mysqli_error()函数用于返回上次MySQL操作所产生的错误信息。该函数需要传入1个参数:mysqli_connect()函数返回的连接变量。
例如,假设在执行查询时出现了错误,则可以使用以下代码获取错误信息:
if (!$result) {
die('Error: ' . mysqli_error($con));
}
在输出错误信息后,我们可以使用mysqli_insert_id()函数获取最后一次插入操作所产生的ID。
6. mysqli_insert_id()
mysqli_insert_id()函数用于返回最后一次插入操作所产生的ID。该函数需要传入1个参数:mysqli_connect()函数返回的连接变量。
例如,假设我们要插入一条记录到users表中,并获取插入的ID,则可以使用以下代码:
mysqli_query($con,"INSERT INTO users (username, email)
VALUES ('John', 'john@example.com')");
echo "New record inserted with ID: " . mysqli_insert_id($con);
在输出结果后,我们可以使用mysqli_affected_rows()函数获取最后一次操作所影响的行数。
7. mysqli_affected_rows()
mysqli_affected_rows()函数用于返回最后一次操作所影响的行数。该函数需要传入1个参数:mysqli_connect()函数返回的连接变量。
例如,假设我们要更新users表中的一条记录,并获取更新的行数,则可以使用以下代码:
mysqli_query($con,"UPDATE users SET email='john_updated@example.com' WHERE username='John'"); echo "Rows affected: " . mysqli_affected_rows($con);
在输出结果后,我们可以使用mysqli_num_rows()函数获取查询结果集中的行数。
8. mysqli_num_rows()
mysqli_num_rows()函数用于返回查询结果集中的总行数。该函数需要传入1个参数:mysqli_query()函数返回的结果集。
例如,假设我们要获取上面查询的结果集中所有记录的总数,则可以使用以下代码:
$count = mysqli_num_rows($result); echo "Total rows: " . $count;
在输出结果后,我们可以使用mysqli_real_escape_string()函数对SQL查询字符串中的特殊字符进行转义。
9. mysqli_real_escape_string()
mysqli_real_escape_string()函数用于转义SQL查询字符串中的特殊字符。该函数需要传入2个参数:mysqli_connect()函数返回的连接变量和要进行转义的字符串。
例如,假设我们要查询users表中包含“O'Riley”的记录,则可以使用以下代码:
$name = mysqli_real_escape_string($con,"O'Riley"); $result = mysqli_query($con,"SELECT * FROM users WHERE username='$name'");
在执行查询前,我们可以使用mysqli_multi_query()函数执行多条SQL查询语句。
10. mysqli_multi_query()
mysqli_multi_query()函数用于在一个连接中执行多条SQL查询语句。该函数需要传入1个参数:SQL查询字符串,每条查询语句以分号分隔。
例如,假设我们要在mydb数据库中创建一个新表,并插入一条记录,则可以使用以下代码:
mysqli_multi_query($con,"CREATE TABLE newusers (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, username VARCHAR(30) NOT NULL, email VARCHAR(30) NOT NULL);
INSERT INTO newusers (username, email)
VALUES ('John', 'john@example.com')");
在执行查询后,我们可以使用mysqli_next_result()函数获取下一个查询结果集。
总结
本文介绍了10个PHP数据库操作函数,它们是mysqli_connect()、mysqli_query()、mysqli_fetch_array()、mysqli_close()、mysqli_error()、mysqli_insert_id()、mysqli_affected_rows()、mysqli_num_rows()、mysqli_real_escape_string()和mysqli_multi_query()。通过掌握这些函数的功能和用法,您将能够更自如地进行PHP数据库操作。
