PHP - 使用一个ID数组从数据库中删除多个项目

5
我有一个数组。
array(4) { [0]=> string(1) "1" [1]=> string(1) "3" [2]=> string(1) "4" [3]=> string(1) "5" }

这个数组的每个元素都是帖子的ID。在mysql中,表posts,列ID。
删除一个ID的查询应该是这样的: DELETE FROM posts WHERE id = $id 我可以遍历这个数组并对每个元素进行删除查询。
但是现在有4个元素,所以需要执行4个查询。如果有70个呢?那就需要执行70个查询。
那么问题来了,如何使用这个ID数组一次性删除所有的帖子呢?

4
使用WHERE id IN () - u_mulder
这是一个重复的问题,与此相同:链接 - Marek Vitek
1个回答

17

首先使用implode()将数组转换为字符串,然后使用WHERE id IN ()

$ids = implode("','", $array);
queryMethod("DELETE FROM posts WHERE id IN ('".$ids."')");

PHP手册:Implode


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接