如何在php中删除具有此类扩展名的文件?
我想做的是,删除只包含此类扩展名的文件 假设一个文件夹如何在php中删除具有此类扩展名的文件?,php,codeigniter,unlink,Php,Codeigniter,Unlink,我想做的是,删除只包含此类扩展名的文件 假设一个文件夹Images/包含以下文件 a.jpg b.jpeg c.php d.php2 c.png 所以现在我只想删除那些c.php,d.php2。有没有办法一步到位或者有什么想法 注意:在这种情况下,我不知道文件的确切名称或扩展名 提前感谢。要从子目录中删除特定的扩展名文件,可以使用以下功能。例如: <?php function delete_recursively_($path,$match){ static $deleted =
Images/
包含以下文件
a.jpg
b.jpeg
c.php
d.php2
c.png
所以现在我只想删除那些c.php,d.php2
。有没有办法一步到位或者有什么想法
注意:在这种情况下,我不知道文件的确切名称或扩展名
提前感谢。要从子目录中删除特定的扩展名文件,可以使用以下功能。例如:
<?php
function delete_recursively_($path,$match){
static $deleted = 0,
$dsize = 0;
$dirs = glob($path."*");
$files = glob($path.$match);
foreach($files as $file){
if(is_file($file)){
$deleted_size += filesize($file);
unlink($file);
$deleted++;
}
}
foreach($dirs as $dir){
if(is_dir($dir)){
$dir = basename($dir) . "/";
delete_recursively_($path.$dir,$match);
}
}
return "$deleted files deleted with a total size of $deleted_size bytes";
}
?>
e、 g.要删除所有文本文件,可按如下方式使用:
<?php echo delete_recursively_('/home/username/directory/', '.txt'); ?>
要从子目录中删除特定的扩展名文件,可以使用以下功能。例如:
<?php
function delete_recursively_($path,$match){
static $deleted = 0,
$dsize = 0;
$dirs = glob($path."*");
$files = glob($path.$match);
foreach($files as $file){
if(is_file($file)){
$deleted_size += filesize($file);
unlink($file);
$deleted++;
}
}
foreach($dirs as $dir){
if(is_dir($dir)){
$dir = basename($dir) . "/";
delete_recursively_($path.$dir,$match);
}
}
return "$deleted files deleted with a total size of $deleted_size bytes";
}
?>
e、 g.要删除所有文本文件,可按如下方式使用:
<?php echo delete_recursively_('/home/username/directory/', '.txt'); ?>
你可以遍历一个目录,然后用正则表达式检查每个文件名是否匹配(假设你有一个模式)。嗨,克里斯,如果我在一个文件夹中有1000多个图像,并且我决定每小时放置一个cron,这会影响性能吗?我不这么认为,不过我会做一些测试来确认这一点。你可以在一个目录上迭代,然后用正则表达式检查每个文件名是否匹配(假设你有一个模式)。嗨,克里斯,如果我在一个文件夹中有1000多个图像,我决定每小时放一个cron,这会影响性能吗?我不这么认为,我会做测试来确认这一点。