首页 > 后端开发 > PHP问题 > php增删改查有结果数组

php增删改查有结果数组

王林
发布: 2023-05-19 17:42:08
原创
423 人浏览过

在PHP编程中,增删改查是非常基础的操作,几乎每个项目都会用到,本文将针对这四个操作,并返回一个结果数组。结果数组的目的是在操作时,可以直接获取操作成功与否的信息,以便程序设计更有效率。

  1. 增加

在PHP中,增加操作用的是INSERT INTO语句,语法如下:

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
登录后复制

其中,table_name是要插入数据的表格名,column1、column2等是表格中要插入数据的列名,再通过VALUES关键字加入对应的数据。

完成插入数据后,可以通过mysqli_affected_rows()函数获取到插入行数,根据行数的值,可以判断是否插入成功。

下面给出一段示例代码:

//连接到数据库
$conn = mysqli_connect($servername, $username, $password, $dbname);

//设置字符集
mysqli_set_charset($conn, "utf8");

//SQL语句
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', 'john@example.com')";

//执行SQL语句
if (mysqli_query($conn, $sql)) {
    $result = array(
            'status' => true,
            'message' => '插入成功',
            'row' => mysqli_affected_rows($conn)
    );
} else {
    $result = array(
            'status' => false,
            'message' => '插入失败: ' . mysqli_error($conn),
            'row' => mysqli_affected_rows($conn)
    );
}

//关闭数据库连接
mysqli_close($conn);

//返回结果数组
return $result;
登录后复制

在代码中,当mysqli_query()执行成功时,我们将返回一个结果数组,表示增加操作是否成功,以及插入数据的行数。

  1. 删除

删除操作用的是DELETE FROM语句,语法如下:

DELETE FROM table_name WHERE some_column = some_value
登录后复制

其中,table_name是要删除数据的表格名,WHERE语句是用来过滤数据的条件。

完成删除数据后,同样可以通过mysqli_affected_rows()函数获取到删除行数,根据行数的值,可以判断是否删除成功。

下面给出一段示例代码:

//连接到数据库
$conn = mysqli_connect($servername, $username, $password, $dbname);

//设置字符集
mysqli_set_charset($conn, "utf8");

//SQL语句
$sql = "DELETE FROM MyGuests WHERE id=3";

//执行SQL语句
if (mysqli_query($conn, $sql)) {
    $result = array(
            'status' => true,
            'message' => '删除成功',
            'row' => mysqli_affected_rows($conn)
    );
} else {
    $result = array(
            'status' => false,
            'message' => '删除失败: ' . mysqli_error($conn),
            'row' => mysqli_affected_rows($conn)
    );
}

//关闭数据库连接
mysqli_close($conn);

//返回结果数组
return $result;
登录后复制

在代码中,当mysqli_query()执行成功时,我们将返回一个结果数组,表示删除操作是否成功,以及删除数据的行数。

  1. 修改

修改操作用的是UPDATE语句,语法如下:

UPDATE table_name SET column1=value1, column2=value2, ...
WHERE some_column=some_value
登录后复制

其中,table_name是要修改数据的表格名,SET语句用来设置新值,WHERE语句用来过滤数据的条件。

完成修改数据后,同样可以通过mysqli_affected_rows()函数获取到修改行数,根据行数的值,可以判断是否修改成功。

下面给出一段示例代码:

//连接到数据库
$conn = mysqli_connect($servername, $username, $password, $dbname);

//设置字符集
mysqli_set_charset($conn, "utf8");

//SQL语句
$sql = "UPDATE MyGuests SET lastname='Doe' WHERE id=2";

//执行SQL语句
if (mysqli_query($conn, $sql)) {
    $result = array(
            'status' => true,
            'message' => '修改成功',
            'row' => mysqli_affected_rows($conn)
    );
} else {
    $result = array(
            'status' => false,
            'message' => '修改失败: ' . mysqli_error($conn),
            'row' => mysqli_affected_rows($conn)
    );
}

//关闭数据库连接
mysqli_close($conn);

//返回结果数组
return $result;
登录后复制

在代码中,当mysqli_query()执行成功时,我们将返回一个结果数组,表示修改操作是否成功,以及修改数据的行数。

  1. 查询

查询操作用的是SELECT语句,语法如下:

SELECT column1, column2, ...
FROM table_name
WHERE some_column=some_value
登录后复制

其中,column1、column2等是要查询的列名,FROM语句指定要查询的表格名,WHERE语句用来过滤数据的条件。

完成查询后,需要使用mysqli_fetch_assoc()函数将查询结果转化为数组。若查询结果为空,则返回空的数组。

下面给出一段示例代码:

//连接到数据库
$conn = mysqli_connect($servername, $username, $password, $dbname);

//设置字符集
mysqli_set_charset($conn, "utf8");

//SQL语句
$sql = "SELECT id, firstname, lastname FROM MyGuests ORDER BY lastname";

//执行SQL语句
$result = mysqli_query($conn, $sql);

//将查询结果转化为数组
if (mysqli_num_rows($result) > 0) {
    $data = array();
    while($row = mysqli_fetch_assoc($result)) {
        $data[] = $row;
    }
    $result = array(
            'status' => true,
            'message' => '查询成功',
            'data' => $data
    );
} else {
    $result = array(
            'status' => true,
            'message' => '查询成功,但无数据',
            'data' => array()
    );
}

//关闭数据库连接
mysqli_close($conn);

//返回结果数组
return $result;
登录后复制

在代码中,我们先执行SQL语句,获取查询结果$result。接着,使用mysqli_num_rows()函数判断查询结果是否为空,若不为空,则使用mysqli_fetch_assoc()函数将查询结果转化为数组,获取到查询数据的行数,返回结果数组;若查询结果为空,则直接返回结果数组。

通过上述四个操作的结果数组,我们可以更有效率地处理数据,增加PHP编程效率。

以上是php增删改查有结果数组的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板