我有一个动态添加配置文件页面的管理系统 - 其中一部分将图像添加到目录中。当我添加图像时,它们都具有名称格式,如12_1.jpg,12_2.jpg,32_1.jpg,32_9.jpg,其中下划线前面的数字是id $cid
,下划线后面的数字是图像号。
我正在尝试找到一种方法来列出edit-images.php页面上的图像,并提供删除它们的选项(可能是图像名称旁边的链接,或者其他更好的方式)。
以下是查找我需要删除选项的图片的代码:
if ($handle = opendir('../images/company')) {
while (false !== ($entry = readdir($handle))) {
if (substr(basename($entry), 0, 2) == $cid) {
echo $entry . "<br>";
}
}
closedir($handle);
}
我如何从这里删除指定的图像?任何帮助将不胜感激。
答案 0 :(得分:2)
在php中,您使用unlink功能删除文件。只需回显一个指向调用函数的页面的链接并传递图像名称。只有在实际执行删除之前,请务必检查用户输入。
答案 1 :(得分:1)
为什么要扫描文件的目录?您可以检查文件是否存在并将其删除。例如:
$files = glob("../images/company/$cid_*.jpg");
foreach($files as $file) {
if(file_exists($file)) unlink($file);
}
这会将../images/company
中的所有文件取消链接,例如以123_
开头的名称,并以.jpg
结尾(您可以使用GLOB_BRACE
参数提供更多扩展名)< / p>