search
Homephp教程php手册php定时删除文件夹下文件(清理缓存文件)

php定时删除文件夹下文件(清理缓存文件)

Jun 13, 2016 am 11:56 AM
phpDowncodedeleteWoolen clothtimingdocumentfolderhaveclean upcacheautomatic

那么有没有方法自动清理临时文件夹呢?

以下代码就是一个简单定时清理文件夹下文件的php代码。
ps:这个代码如果不重启网站会一直执行下去,所以只用作于本地环境测试,请别在网站上测试。

复制代码 代码如下:


ignore_user_abort(); //客户端断开时,可以让脚本继续在后台执行
set_time_limit(0); //忽略php.ini设置的脚本运行时间限制
$interval = 5*60; //设置执行周期,单位为秒,5分钟为 5*60=300
do{
$dir = "temp/"; //你的临时目录位置
$handle=opendir("{$dir}/");
while (false !== ($file=readdir($handle))) {
if ($file!="." && $file!=".." && !is_dir("{$dir}/{$file}")) {
@unlink ("{$dir}/{$file}");
}
}
closedir($handle); //关闭由 opendir() 函数打开的目录
sleep($interval); //执行一个周期后,休眠$interval时间,休眠结束后脚本继续执行
}while(true); //周期性执行脚本



根据网上的一个思路来的,建一个flag.txt文件,在里面输入1或者0,“0”表示停止执行,“1”表示继续执行。这样的话就可以开始和停止了。

复制代码 代码如下:


$flag = 1; //将执行标志设置为1,默认为执行
ignore_user_abort(); //客户端断开时,可以让脚本继续在后台执行
set_time_limit(0); //忽略php.ini设置的脚本运行时间限制
$interval = 5*60; //设置执行周期,单位为秒,5分钟为 5*60=300
do{
$flagfile = "flag.txt"; //标志放置在文件“flag.txt”中。“0”表示停止执行,“1”表示继续执行
if(file_exists($flagfile) && is_readable($flagfile)) { //读取文件内容
$fh = fopen($flagfile,"r");
while (!feof($fh)) {
$flag = fgets($fh); //存储标志
}
fclose($fh);
}
$dir = "temp/"; //你的临时目录位置
$handle=opendir("{$dir}/");
while (false !== ($file=readdir($handle))) {
if ($file!="." && $file!=".." && !is_dir("{$dir}/{$file}")) {
@unlink ("{$dir}/{$file}");
}
}
closedir($handle); //关闭由 opendir() 函数打开的目录
sleep($interval); //执行一个周期后,休眠$interval时间,休眠结束后脚本继续执行
}while($flag);



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”文件夹(包括其内容也要被删除).

复制代码 代码如下:


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);
?>

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.