Cron作业 - 删除特定文件夹中的所有文件

时间:2012-07-06 10:45:50

标签: php cron

我想用php删除名为“data”的文件夹中的所有文件并使用Cron Job

Cron Job设置为每小时运行脚本,但我丢失了我应该写的空白

textfield以及如何删除php中特定文件夹内的所有文件?

请有人解释我并帮助我...

enter image description here

修正了它:

在空字段

中放置delete.php

并在delete.php里面写下面的代码:

<?php


define('PATH', 'folder/');

function destroy($dir) {
    $mydir = opendir($dir);
    while(false !== ($file = readdir($mydir))) {
        if($file != "." && $file != "..") {
            chmod($dir.$file, 0777);
            if(is_dir($dir.$file)) {
                chdir('.');
                destroy($dir.$file.'/');
                rmdir($dir.$file) or DIE("couldn't delete $dir$file<br />");
            }
            else
                unlink($dir.$file) or DIE("couldn't delete $dir$file<br />");
        }
    }
    closedir($mydir);
}
destroy(PATH);
echo 'all done.';


?>

4 个答案:

答案 0 :(得分:6)

在cpanel中去cron工作 如果要删除包含其内容的文件夹:

rm -rf /home/user/public_html/folder

如果要删除此文件夹中的所有内容,请保留文件夹本身:

rm -f /home/user/public_html/folder/*

答案 1 :(得分:5)

这是PHP中可以删除文件的函数。

http://se2.php.net/unlink

而且,这里的例子; http://se2.php.net/manual/en/function.unlink.php#108940

包含有关如何从目录中删除文件的信息(只需跳过底部的rmdir)

编辑:忘了关于cron-thing。 :)

如果您使用以下内容在/ home / a1206305 / called directory.php中创建文件:

<?php
    $path = "/home/a1206305/domain.com/data/";
    foreach(glob($path . "*") as $file)
    {
        if(is_file($path . $file))
            unlink($path . $file);
    }
?>

然后在cron的第二个字段中,只需在directory.php中写入

答案 2 :(得分:1)

只需提供您的php文件的完整文件路径(可以包含域名以及我们在浏览器中运行该页面),然后在该页面中编写代码以删除任何文件夹中的所有文件。

答案 3 :(得分:1)

输入php文件的完整路径并编写代码以删除相应目录中的所有文件。 php文件代码:

$dir = 'your directory path';
foreach(glob($dir.'*.*') as $v){
unlink($v);
}