欢迎访问宙启技术站
智能推送

PHP数据库函数:10个常用函数,从mysqli_connect到mysqli_query

发布时间:2023-06-20 20:48:31

PHP是一种强大的服务器端脚本语言,广泛用于开发Web应用程序。在PHP中,一个重要的方面是数据库操作。本篇文章将介绍10个常用的PHP数据库函数,从mysqli_connect到mysqli_query。

1. mysqli_connect

mysqli_connect函数用于在PHP中连接到MySQL数据库。它需要四个参数:主机名、用户名、密码和数据库名。示例代码如下:

<?php

//连接到MySQL数据库

$conn = mysqli_connect("localhost", "username", "password", "database");

//检查是否连接成功

if (!$conn) {

    die("连接失败:" . mysqli_connect_error());

}

echo "连接成功!";

?>

2. mysqli_select_db

mysqli_select_db函数用于选择要使用的MySQL数据库。它需要两个参数:连接句柄和数据库名。示例代码如下:

<?php

//连接到MySQL数据库

$conn = mysqli_connect("localhost", "username", "password", "database");

//选择要使用的数据库

mysqli_select_db($conn, "database");

echo "数据库选择成功!";

?>

3. mysqli_query

mysqli_query函数用于在MySQL数据库中执行SQL查询。它需要两个参数:连接句柄和查询字符串。示例代码如下:

<?php

//连接到MySQL数据库

$conn = mysqli_connect("localhost", "username", "password", "database");

//执行SQL查询

$result = mysqli_query($conn, "SELECT * FROM users");

//处理查询结果

while ($row = mysqli_fetch_assoc($result)) {

    echo $row['id'] . " - " . $row['name'] . "<br>";

}

?>

4. mysqli_fetch_assoc

mysqli_fetch_assoc函数用于从查询结果中获取行数据。它需要一个参数:查询结果。返回的数据是关联数组,其中键对应列名,值对应该行的数据。示例代码如下:

<?php

//连接到MySQL数据库

$conn = mysqli_connect("localhost", "username", "password", "database");

//执行SQL查询

$result = mysqli_query($conn, "SELECT * FROM users");

//处理查询结果

while ($row = mysqli_fetch_assoc($result)) {

    echo $row['id'] . " - " . $row['name'] . "<br>";

}

?>

5. mysqli_fetch_array

mysqli_fetch_array函数也用于从查询结果中获取行数据。与mysqli_fetch_assoc不同,它返回既包括键又包括索引的数组。示例代码如下:

<?php

//连接到MySQL数据库

$conn = mysqli_connect("localhost", "username", "password", "database");

//执行SQL查询

$result = mysqli_query($conn, "SELECT * FROM users");

//处理查询结果

while ($row = mysqli_fetch_array($result)) {

    echo $row[0] . " - " . $row[1] . "<br>";

}

?>

6. mysqli_num_rows

mysqli_num_rows函数用于获取查询结果中的行数。它需要一个参数:查询结果。示例代码如下:

<?php

//连接到MySQL数据库

$conn = mysqli_connect("localhost", "username", "password", "database");

//执行SQL查询

$result = mysqli_query($conn, "SELECT * FROM users");

//获取查询结果中的行数

$num_rows = mysqli_num_rows($result);

echo "总共有 " . $num_rows . " 行数据。";

?>

7. mysqli_affected_rows

mysqli_affected_rows函数用于获取最近一次查询对数据库中的行数影响的行数。当使用UPDATE、DELETE或INSERT语句时,该函数非常有用。示例代码如下:

<?php

//连接到MySQL数据库

$conn = mysqli_connect("localhost", "username", "password", "database");

//执行SQL更新查询

mysqli_query($conn, "UPDATE users SET name='Peter' WHERE id=1");

//获取对数据库的影响行数

$num_rows = mysqli_affected_rows($conn);

echo "影响了 " . $num_rows . " 行数据。";

?>

8. mysqli_insert_id

mysqli_insert_id函数用于获取刚插入行的自增ID,这在少数情况下是非常有用的。示例代码如下:

<?php

//连接到MySQL数据库

$conn = mysqli_connect("localhost", "username", "password", "database");

//插入一条新数据

mysqli_query($conn, "INSERT INTO users (name, email) VALUES ('Peter', 'peter@example.com')");

//获取刚插入行的自增ID

$id = mysqli_insert_id($conn);

echo "新用户的ID是 " . $id . "。";

?>

9. mysqli_real_escape_string

mysqli_real_escape_string函数用于在SQL语句中转义特殊字符,以防止SQL注入攻击。示例代码如下:

<?php

//连接到MySQL数据库

$conn = mysqli_connect("localhost", "username", "password", "database");

//获取用户输入

$username = $_POST['username'];

$password = $_POST['password'];

//转义特殊字符

$username = mysqli_real_escape_string($conn, $username);

$password = mysqli_real_escape_string($conn, $password);

//执行SQL查询

mysqli_query($conn, "SELECT * FROM users WHERE username='$username' AND password='$password'");

?>

10. mysqli_error

mysqli_error函数用于获取最近一次MySQL操作的错误消息。如果有错误发生,该函数将返回错误描述。示例代码如下:

<?php

//连接到MySQL数据库

$conn = mysqli_connect("localhost", "username", "password", "database");

//执行SQL查询

$result = mysqli_query($conn, "SELECT * FROM nonexistent_table");

//检查是否发生错误

if (!$result) {

    echo "查询出错:" . mysqli_error($conn);

}

?>