php如何定时删除文件?-PHP问题

资源魔 32 0

php按时删除了文件的办法:起首新建一个【flag.txt】文件,正在外面输出1或许0;而后【1】示意持续执行,代码为【$flag = 1;】;最初客户端断开时,能够让剧本持续正在后盾执行,代码为【ignore_user_abort();】。

php按时删除了文件的办法:

如下代码就是一个简略按时清算文件夹下文件的php代码。

ps:这个代码假如没有重启网站会不断执行上来,以是只用作于内陆环境测试,请别正在网站上测试。

代码以下:

<?php
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”示意持续执行。这样的话就能够开端以及中止了。

代码以下:

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

代码以下:

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

相干学习保举:PHP编程从入门到通晓

以上就是php若何按时删除了文件?的具体内容,更多请存眷资源魔其它相干文章!

标签: php 文件 php教程 php故障解决 php使用问题 定时删除

抱歉,评论功能暂时关闭!