我们在Linux下PHP删除一个目录下所有文件夹和子目录的方法大至如下
<?php
function removeDir($dirName)
{
if(! is_dir($dirName))
{
@unlink($dirName)
return false
}
$handle = @opendir($dirName)
while(($file = @readdir($handle)) !== false)
{
if($file != &&$file != )
{
$dir = $dirName / $file
is_dir($dir) ? removeDir($dir) : @unlink($dir)
}
}
closedir($handle)
return rmdir($dirName)
}
$dirName = bmz_cache
removeDir($dirName )
lishixinzhi/Article/program/PHP/201311/20778正常的思路来说,先循环删除文件夹下的所有文件,当没有文件时再删除文件夹,如果你要删除文件夹和所有文件直接本地删除就好了,但是一般没有这种 *** 作。删除文件可以用unlink($filepath)函数,$filepath是文件路径,然后还有一个封装函数rm_empty_dir($path)删除所有空目录:
/** 删除所有空目录
* @param String $path 目录路径
*/
function rm_empty_dir($path){
if(is_dir($path) &&($handle = opendir($path))!==false){
while(($file=readdir($handle))!==false){// 遍历文件夹
if($file!='.' &&$file!='..'){
$curfile = $path.'/'.$file// 当前目录
if(is_dir($curfile)){// 目录
rm_empty_dir($curfile)// 如果是目录则继续遍历
if(count(scandir($curfile))==2){//目录为空,=2是因为.和..存在
rmdir($curfile)// 删除空目录
}
}
}
}
closedir($handle)
}
}
具体的还要你自己稍加修改,希望可以帮到你。
1. 写入:
<?php$filename = "Test//file.txt"
$file = fopen($filename, "w") //以写模式打开文件
fwrite($file, "Hello, world!/n") //写入第一行
fwrite($file, "This is a test!/n") //写入第二行
fclose($file) //关闭文件
?>
2. 删除:
<?php$filename = "Test//file.txt"
unlink($filename) //删除文件
?>
3.复制:
<?php $filename1 = "Test//file.txt" $filename2 = "Test//file.bak" copy($filename1, $filename2) //复制文件 ?>欢迎分享,转载请注明来源:内存溢出
评论列表(0条)