如何在 ThinkPHP 5 中删除多个数据

thinkphp 5 中的数据操作非常方便,可以使用模型的 where 方法一次性删除多个数据。本文将介绍如何在 thinkphp 5 中删除多个数据。

准备工作

在开始之前,请确保您已经安装好了 ThinkPHP 5,并有一个测试数据库。本文以删除用户信息为例,首先需要创建一个 User 模型,如下所示:

<?php namespace appindexmodel;  use thinkModel;  class User extends Model {     // 定义主键和表名     protected $pk = 'id';     protected $table = 'user'; }

User 模型对应的数据库表结构如下:

CREATE TABLE `user` (   `id` int(11) unsigned NOT NULL AUTO_INCREMENT,   `username` varchar(50) NOT NULL DEFAULT '',   `password` varchar(50) NOT NULL DEFAULT '',   PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

删除多个数据

在 User 模型中添加一个 deleteUsers 方法,该方法接受一个数组参数,数组中包含需要删除的用户 ID。该方法使用 where 方法来删除多个数据,如下所示:

public function deleteUsers($ids) {     $result = $this->where('id', 'in', $ids)->delete();     return $result; }

上述代码中,where 方法的第一个参数为字段名,第二个参数为操作符,第三个参数为需要匹配的值,其中 in 操作符表示查找 id 字段的值在 $ids 数组中的数据。最后调用 delete 方法对匹配的数据进行删除操作。

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

测试删除多个数据

在控制器中编写测试代码:

public function deleteUsers() {     $ids = [1, 2, 3];     $userModel = new User();     $result = $userModel->deleteUsers($ids);     if ($result) {         return '删除成功';     } else {         return '删除失败';     } }

上述代码中,我们调用 deleteUsers 方法删除 ID 为 1、2、3 的用户数据。最后根据删除结果返回相应的信息。

结论

在 ThinkPHP 5 中删除多个数据非常方便,只需要使用 where 方法即可。如果您需要删除多个数据,请按照本文所述方法操作。

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享