我有这段代码:
<?php
$filename = $_POST['showDeleteNummer'];
if (file_exists("../Images/".$filename)) {
@unlink($filename);
echo('ja');
}
else{
echo ('nein');
}
?>
问题是,我不知道文件的结尾(.jpg,.png,.gif)。是否有用于删除文件夹中具有特殊名称(没有结尾)的文件的代码? 将不会有另一个具有相同名称的文件。
答案 0 :(得分:3)
Franz Gleichmanns的答案是一个解决方案,但如果扩展名为.pdf或.doc?最好将glob()
与此解决方案的模式一起使用(http://php.net/manual/de/function.glob.php)。
$name = '/path/to/file/with/name';
$files = glob($name . '*');
var_dump($files);
这应该为您提供所有可用于所有不同扩展名的文件的数组。然后你可以迭代它们删除它们。
编辑:使用此代码段,您可以告诉glob
哪个文件应该搜索或屏蔽。
$name = '/path/to/file/with/name';
$files = glob($name . '*.{jpg,png,gif}', GLOB_BRACE);
var_dump($files);
答案 1 :(得分:1)
只要查看文件是否实际存在于首位,就应该进行设置。
$name = "picture";
if(file_exists("$name.png")) {
unlink("$name.png");
}elseif(file_exists("$name.gif")) {
unlink("$name.gif");
} elseif(file_exists("$name.jpg")) {
unlink("$name.jpg");
}