首頁 >php框架 >ThinkPHP >如何在 ThinkPHP 5 中刪除多個數據

如何在 ThinkPHP 5 中刪除多個數據

PHPz
PHPz原創
2023-04-11 10:42:46450瀏覽

ThinkPHP 5 中的資料運算非常方便,可以使用模型的 where 方法一次刪除多個資料。本文將介紹如何在 ThinkPHP 5 中刪除多個資料。

準備工作

在開始之前,請確保您已經安裝了 ThinkPHP 5,並且有一個測試資料庫。本文以刪除使用者資訊為例,首先需要建立一個User 模型,如下圖所示:

<?php
namespace app\index\model;

use think\Model;

class User extends Model
{
    // 定义主键和表名
    protected $pk = &#39;id&#39;;
    protected $table = &#39;user&#39;;
}

User 模型對應的資料庫表結構如下:

CREATE TABLE `user` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `username` varchar(50) NOT NULL DEFAULT &#39;&#39;,
  `password` varchar(50) NOT NULL DEFAULT &#39;&#39;,
  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 方法對符合的資料進行刪除操作。

測試刪除多個資料

在控制器中編寫測試程式碼:

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 方法。如果您需要刪除多個數據,請按照本文所述方法操作。

以上是如何在 ThinkPHP 5 中刪除多個數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn