判断数据库中的字段与文件夹中的文件是否对应,如果没有对应则删除文件,极大的减少了占用系统资源。
-
//Created on 2010-4-24 Made by Wolf QQ116311316
-
- //作用:是判断数据库中的字段与文件夹中的文件是否对应,如果没有对应
- //则删除文件,极大的减少了占用系统资源。
- //$dir 是要查找的文件目录
-
- //$table 为查找的表
-
- //$field 为字段名
-
- //====================
-
- function delfile($dir = "",$table,$field){
-
- //获取目录下的文件
- if (is_dir($dir)) {
- if ($dh = opendir($dir)) {
- while (($file = readdir($dh)) !== false) {
-
- if($file!="."&&$file!=".."){
-
- $exit[]=$file;}
-
- }
- closedir($dh);
- }
- }
-
-
- //获取数据库中的文件 图片地址
- $sql="select $field from $table";
- $query=mysql_query($sql);
-
- while($row=mysql_fetch_array($query)){
-
-
- $pic[]=$row[pic];
- }
-
- //这里的函数很重要啊 array_diff_key 本来是使用这个 好像有点问题
- $result = @array_diff($exit, $pic);
-
-
- if($result==null){
-
- echo "你没有文件要删除";
-
- }
-
-
- foreach($result as $id=>$values){
-
-
- echo "系统删除的文件为".$values."
";
- $file=$dir.$values;
- unlink("$file");
-
-
- }
-
-
-
- }
-
- ?>
复制代码
|