一、使用delete 方法
在ThinkPHP 中,我們可以使用delete 方法來刪除數據,這個方法非常簡單,只需要在模型中使用delete 方法即可,例如:
$user = UserModel::get(1); $user->delete();
這樣就可以刪除ID 為1 的使用者了。若您的 Model 不指定主鍵,則可採用下列方式:
$user = UserModel::get(['name' => 'thinkphp']); $user->delete();
這樣就可以刪除名稱為 thinkphp 的使用者了。
二、鍊式刪除
在ThinkPHP 中,我們也可以使用鍊式刪除來刪除數據,這個方法比較常用,例如:
$user = UserModel::where('id', 1)->delete();
這個方法會刪除ID 為1 的用戶數據,並傳回刪除的行數。
三、軟刪除
在 ThinkPHP 中,我們也可以使用軟刪除來刪除資料。所謂軟刪除,就是把資料標記為已刪除,而不是真正的刪除資料。這個操作在資料恢復、資料查詢等方面很有用。我們可以在模型中使用軟體刪除,例如:
class UserModel extends Model { use SoftDelete; protected $deleteTime = 'delete_time'; protected $defaultSoftDelete = 0; protected $autoWriteTimestamp = true; }
在這個範例中,我們使用了 SoftDelete 的 Trait,設定了 delete_time 欄位為刪除時間。這樣,我們在使用 delete 方法或鍊式刪除方法時,都會將對應的資料標記為已刪除,而不是真正的刪除資料。
四、批量刪除
在開發專案時,我們有時需要批量刪除數據,有以下兩種方法:
1.使用SQL語句
我們可以直接使用SQL 語句來批次刪除數據,例如:
Db::table('user')->where('id', 'in', [1, 2, 3])->delete();
這個方法會刪除ID 為1、2、3 的使用者數據,並傳回刪除的行數。
2.使用模型的delete 方法
我們也可以使用模型的delete 方法來批量刪除數據,例如:
UserModel::destroy([1, 2, 3]);
這個方法會刪除ID 為1、2 、3 的用戶數據,並傳回刪除的行數。
以上是thinkphp的刪除方法怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!