本文目录一览:
- 1、如何用PHP删除文件??
- 2、PHP删除目录下超过时间的文件.该怎么写?
- 3、php中如何删除文件或者文件夹呢?
- 4、php怎么删除文件?
- 5、php删除文件夹及其文件夹下所有文件
- 6、thinkphp过期的缓存文件如何自动删除?
如何用PHP删除文件??
?php
function del_dir($dir){ //删除目录
if(!($mydir=@dir($dir))){
return;
}
while($file=$mydir-read()){
if(is_dir("$dir$file") $file!='.' $file!='..'){
@chmod("$dir$file", 0777);
del_dir("$dir$file");
}elseif(is_file("$dir/$file")){
$file_time=@stat($file); //读取文件的最后更新时间
if(time()-$file_time3600*24*14){
@chmod("$dir/$file", 0777);
@unlink("$dir/$file");
}
}
}
$mydir-close();
@chmod($dir, 0777);
@rmdir($dir);
}
?
PHP删除目录下超过时间的文件.该怎么写?
利用 filemtime 函数吧
这个函数可以获取文件最后一个写入时候的UNIX时间戳。
可以在文件生成的时候, 先删除掉过期文件。
php中如何删除文件或者文件夹呢?
unlink--删除文件
rmdir--删除目录删除的前提是,你的PHP程序有对目录的写权限。没有办法一次性的,你可以自己写一个函数,读取该目录下所有文件,然后循环删除文件,再删除目录。
php怎么删除文件?
删除文件可以相对路径,也可以绝对路径,从你图片2来看,报错的信息是权限不够,没有权限删除"./",这说明你后面的值没有获取到。而它没有权限删除它所在的目录。
删除文件注意两点。
文件路径是否存在,可以通过file_exist判断。
文件权限是否足够。
php删除文件夹及其文件夹下所有文件
有时候我们需要用php删除文件夹及其文件夹下所有文件,那么就可以使用下面的代码了,需要的朋友可以参考下。根据自身要求添加功能
代码如下:
?
function deldir($dir) {
//先删除目录下的文件:
$dh=opendir($dir);
while ($file=readdir($dh)) {
if($file!="." $file!="..") {
$fullpath=$dir."/".$file;
if(!is_dir($fullpath)) {
unlink($fullpath);
} else {
deldir($fullpath);
}
}
}
closedir($dh);
//删除当前文件夹:
if(rmdir($dir)) {
return true;
} else {
return false;
}
}
?
实例:
删除某个文件夹下的所有“.svn”文件夹(包括其内容也要被删除).
?php
function delsvn($dir) {
$dh=opendir($dir);
//找出所有".svn“ 的文件夹:
while ($file=readdir($dh)) {
if($file!="." $file!="..") {
$fullpath=$dir."/".$file;
if(is_dir($fullpath)) {
if($file==".svn"){
delsvndir($fullpath);
}else{
delsvn($fullpath);
}
}
}
}
closedir($dh);
}
function delsvndir($svndir){
//先删除目录下的文件:
$dh=opendir($svndir);
while($file=readdir($dh)){
if($file!="."$file!=".."){
$fullpath=$svndir."/".$file;
if(is_dir($fullpath)){
delsvndir($fullpath);
}else{
unlink($fullpath);
}
}
}
closedir($dh);
//删除目录文件夹
if(rmdir($svndir)){
return true;
}else{
return false;
}
}
$dir=dirname(__FILE__);
//echo $dir;
delsvn($dir);
?
thinkphp过期的缓存文件如何自动删除?
缓存时间过期后并不是自动删除文件,而是当你下次访问时自动生成新的缓存文件并覆盖原有的,删除了没有必须,因为当你下次再访问的时候还会生成,你可以使用系统配置来考虑缓存的时间或缓存的方式:
'TMPL_CACHE_ON' = true, // 是否开启模板编译缓存,设为false则每次都会重新编译
'TMPL_CACHE_TIME' = 0, // 模板缓存有效期 0 为永久,(以数字为值,单位:秒)