
<?
//文件编码转换.
function file_iconv($fromcode,$tocode,$file){
$data = join('',file($file));
if(preg_match('/charset='.str_replace('-','/-',$tocode).'/mis',$data)){
echo "<font color='red'>$file $tocode .</font>";
}
$data = preg_replace('/charset='.str_replace('-','/-',$fromcode).'/mis',"charset=$tocode",$data);
$data = preg_replace('/(sets+namess+)''.str_replace('-','',$fromcode).''/mis',"/1'".str_replace('-','',$tocode)."'",$data);
$data = iconv("$fromcode","$tocode",$data);
$fp = fopen("$file","w");
fwrite($fp,$data);
fclose($fp);
echo "$file ...<br>";
}
function listfiles($dir="."){
$handle=opendir("$dir");
while ($file = readdir($handle)) {
if($file=="."||$file=="..")continue;
if(is_dir("$dir/$file")){
listfiles("$dir/$file");
}
else {
$ext = strtolower(strrchr($file,'.'));
if(in_array($ext,array(".php",".html",".htm"))){
file_iconv("gb2312","utf-8","$dir/$file");
}
}
}
closedir($handle);
}
listfiles("mydir");
?>

文件编码转换脚本
本文介绍了一个用于递归地遍历指定目录下所有文件,并将指定类型的文件从GB2312编码转换为UTF-8编码的PHP脚本。该脚本会修改包括.php、.html和.htm在内的文件,确保其内容和声明的字符集一致。
1803

被折叠的 条评论
为什么被折叠?



