判断数据库中的字段与文件夹中的文件是否对应,如果没有对应则删除文件,极大的减少了占用系统资源。
1.[代码]php代码
//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");
}
}
?>