php 根据数据库中的文件记录来删除文件
根据数据库中的文件记录来删除文件 判断数据库中的字段与文件夹中的文件是否对应,如果没有对应则删除文件,极大的减少了占用系统资源。[代码片段(67行)]
判断数据库中的字段与文件夹中的文件是否对应,如果没有对应则删除文件,极大的减少了占用系统资源。
<?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."<br>"; $file=$dir.$values; unlink("$file"); } } ?> //该片段来自于http://outofmemory.cn
- 上一篇:随机数 php生成多不不重复的随机数
- 下一篇:php 开启gzip压缩网站内容
精彩图集
精彩文章