// 批量刪除
public function del_uploadsimg()
{
$del_type = 'img_id';
$img_ids = input('img_id/a');
foreach ($img_ids as $key => $val) {
if (!is_numeric($val)) {
$del_type = 'image_url';
$val = mchStrCode($val, 'DECODE');
if (empty($val) || !preg_match("/^([\w\-\/\.]+)\.(".str_replace(',', '|', $this->image_type).")$/i", $val)) {
unset($img_ids[$key]);
}
} else {
$val = intval($val);
}
$img_ids[$key] = $val;
}
if (IS_POST && !empty($img_ids)) {
if ('image_url' == $del_type) {
foreach ($img_ids as $key => $val) {
$rs = @unlink(ROOT_PATH.$val);
}
} else {
$rs = Db::name('uploads')->where("img_id", 'IN', $img_ids)->delete();
// $rs = Db::name('uploads')->where("img_id", 'IN', $img_ids)->update(['is_del' => 1, 'update_time'=>getTime()]);
}
if ($rs !== false) {
$this->success("刪除成功");
}
}
$this->error("刪除失敗");
}
這是圖片刪除的php代碼 ,看上去好像能實際把圖片從服務器上刪除,但是實際上只能刪除數據庫的記錄,圖片仍然存在。 $rs = @unlink(ROOT_PATH.$val); 這個地址用的對嗎