ecshop校验文件生成MD5文件代码
发布时间:12/03 来源: 浏览:
关键词:
ecshop校验文件生成MD5文件的代码
- define('ROOT_PATH', str_replace(basename( __FILE__), '', str_replace('\\', '/', __FILE__)));
- ini_set('max_execution_time', '300');
- checkfiles('./', '\.php', 0);
- checkfiles('admin/', '\.php|\.htm|\.js|\.css|\xml');
- checkfiles('api/', '\.php');
- checkfiles('includes/', '\.php|\.html|\.js',1,'fckeditor'); //fck不检查
- checkfiles('js/', '\.js|\.css');
- checkfiles('languages/', '\.php');
- checkfiles('plugins/', '\.php');
- checkfiles('wap/', '\.php|\.wml');
- /*
- checkfiles('themes/default/', '\.dwt|\.lbi|\.css'); //模板
- checkfiles('uc_client/', '\.php', 0);
- checkfiles('uc_client/control/', '\.php');
- checkfiles('uc_client/model/', '\.php');
- checkfiles('uc_client/lib/', '\.php');
- */
- file_put_contents('./admin/ecshopfiles.md5',$md5str); //保存文件校验信息
- echo "MD5文件生成完成";
- /**检查文件
- * @param string $currentdir //待检查目录
- * @param string $ext //待检查的文件类型
- * @param int $sub //是否检查子目录
- * @param string $skip //不检查的目录或文件
- */
- function checkfiles($currentdir, $ext = '', $sub = 1, $skip = '')
- {
- global $md5data, $md5str;
- $dir = @opendir(ROOT_PATH.$currentdir);
- $exts = '/('.$ext.')$/i';
- $skips = explode(',', $skip);
- while($entry = @readdir($dir))
- {
- $file = $currentdir.$entry;
- if($entry != '.' && $entry != '..' && $entry != '.svn' && (preg_match($exts, $entry) || $sub && is_dir($file)) && !in_array($entry, $skips))
- {
- if($sub && is_dir($file))
- {
- checkfiles($file.'/', $ext, $sub, $skip);
- }
- else
- {
- if($file != './md5.php')
- {
- $md5data[$file] = md5_file($file);
- $md5str .= md5_file($file).' *'.$file."\r\n";
- }
- }
- }
- }
- }