thinkphp フレームワークを使用してプロジェクトを作成する場合、データをバッチで削除する必要がある状況によく遭遇します。単一のデータを削除したい場合は、フレームワークに付属の delete メソッドを使用できます。ただし、データをバッチで削除する必要がある場合は、他の方法を使用する必要があります。
1. select メソッドを使用して削除するデータをクエリする
まず、select メソッドを使用して削除するデータをクエリし、そのデータを配列に格納する必要があります。 ##
$ids = input('post.ids/a');
$data = Db::table('table_name')->where('id', 'in', $ids)->select();
ログイン後にコピー
このうち、$idsはフロントエンドから送信される削除対象データのid値を表します。 where メソッドを使用して、$ids 内の ID を持つデータをフィルターで除外し、$data 配列に保存します。
2. foreach メソッドを使用してデータの削除をループする
次に、foreach メソッドを使用して $data 配列を走査し、フレームワーク独自の delete メソッドを使用してデータを削除します。
foreach ($data as $value) {
Db::table('table_name')->where('id', $value['id'])->delete();
}
ログイン後にコピー
ループ中に、where メソッドを使用して現在のデータの ID 値をフィルターで除外し、削除します。
3. Db クラスのバッチ削除メソッドを使用してデータをバッチで削除します
さらに、thinkphp フレームワークには、batches-batchDelete でデータを削除するメソッドも提供されています。このメソッドを直接使用して、データのバッチ削除を完了できます。
$ids = input('post.ids/a');
Db::table('table_name')->where('id', 'in', $ids)->batchDelete();
ログイン後にコピー
このうち、batchDelete メソッドは、where メソッドでフィルターされた条件に基づいて、クエリされたすべてのデータを直接削除します。
概要
上記は、thinkphp フレームワークを使用してデータを一括削除する方法です。基本的には、where メソッドを使用して削除するデータをフィルタリングし、循環削除または直接削除を実行します。一括削除。大量のデータを削除する場合は、削除効率を向上させるbatchDeleteメソッドを使用することをお勧めします。どの方法を使用する場合でも、データを誤って削除しないように特別な注意を払う必要があります。
以上がthinkphpの一括削除の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。