Tôi không phải chuyên gia, nhưng tôi tin
$idListString = implode(",",$idList);
mysql_query("DELETE FROM this_table WHERE id IN ($idListString)");
nhanh hơn. Lý do là, nó chỉ thực hiện một truy vấn. Ít dữ liệu được gửi đến máy chủ hơn và tất cả được xử lý một lần, trong một lệnh.
Nói chung, với phương pháp khác, nếu bạn nói 300 giá trị, điều đó có nghĩa là bạn đang thực hiện 300 lệnh gọi hàm bổ sung, 300 thông tin liên lạc tới máy chủ, v.v. mặc dù trong thực tế, điều đó có thể khác nhau.
chỉnh sửa:Hơn nữa, bạn nên luôn sử dụng MySQL thoát phù hợp, ngay cả khi bạn có thể chắc chắn rằng dữ liệu không độc hại. Xem http://php.net/manual/en/ function.mysql-real-Escape-string.php và cân nhắc sử dụng mysqli hoặc PDO.