有时程序的逻辑代码完全没有一问题,但是就是运行的时候出错,如果出现这种情况,那么有可能就是文件中包含了bom头所导致的,下面给出了php去除bom头的源代码,只要把下面的代码放到一个php的文件中,并且改好目录,然后运行那个文件就可以了
//此文件用于快速测试UTF8编码的文件是不是加了BOM,并可自动移除
="."; //修改此行为需要检测的目录,点表示当前目录,如果是根目录下的其它目录,示例="Application\Home\View";
=1; //是否自动移除发现的BOM信息。1为是,0为否。
//以下不用改动
if ( = opendir()) {
while (( = readdir()) !== false) {
if (!="." && !=".." && !is_dir(."/".)) echo "filename: ".checkBOM("/")."
";
}
closedir();
}
function checkBOM () {
global ;
=file_get_contents();
=substr(, 0, 1);
=substr(, 1, 1);
=substr(, 2, 1);
if (ord()==239 && ord()==187 && ord()==191) {
if (==1) {
=substr(, 3);
rewrite (, );
return ("BOM found, automatically removed.");
} else {
return ("BOM found.");
}
}
else return ("BOM Not Found.");
}
function rewrite (, ) {
=fopen(,"w");
flock(,LOCK_EX);
fwrite(,);
fclose();
}