PHP批量清除bom头

来源:互联网 发布:欢乐麻将淘宝怎么回事 编辑:程序博客网 时间:2024/06/05 06:31

关于BOM:

为了识别 Unicode 文件,Microsoft 建议所有的 Unicode 文件应该以 ZERO WIDTH NOBREAK SPACE(U+FEFF)字符开头。这作为一个“特征符”或“字节顺序标记(byte-order mark,BOM)”来识别文件中使用的编码和字节顺序。

Linux/UNIX 并没有使用 BOM,因为它会破坏现有的 ASCII 文件的语法约定。 (-- 这就是导致这次页面出现空白行的原因)

dom不是好东西就是一个数据签名,一串字符串而已,经常导致页面出现空白行,特别是PHP进行文件引入require_once和include的时候

在需要清除bom的时候,把下面代码保存为一个php文件放到网站根目录去运行即刻把bom清除掉

<?phpheader('content-Type: text/html; charset=utf-8');if(isset($_GET['dir'])){ //设置文件目录,如果没有设置,则自动设置为当前文件所在目录$basedir=$_GET['dir'];}else{$basedir='.';}$auto=1;/*设置为1标示检测BOM并去除,设置为0标示只进行BOM检测,不去除*/echo '当前查找的目录为:'.$basedir.'当前的设置是:';echo $auto?'检测文件BOM同时去除检测到BOM文件的BOM<br />':'只检测文件BOM不执行去除BOM操作<br />';checkdir($basedir);function checkdir($basedir){if($dh=opendir($basedir)){while (($file=readdir($dh)) !== false){if($file != '.' && $file != '..'){if(!is_dir($basedir.'/'.$file)){echo '文件: '.$basedir.'/'.$file .checkBOM($basedir.'/'.$file).' <br>';}else{$dirname=$basedir.'/'.$file;checkdir($dirname);}}}closedir($dh);}}function checkBOM($filename){global $auto;$contents=file_get_contents($filename);$charset[1]=substr($contents,0,1);$charset[2]=substr($contents,1,1);$charset[3]=substr($contents,2,1);if(ord($charset[1])==239 && ord($charset[2])==187 && ord($charset[3])==191){if($auto==1){$rest=substr($contents,3);rewrite($filename,$rest);return (' <font color=red>找到BOM并已自动去除</font>');}else{return (' <font color=red>找到BOM</font>');}}else{return (' 没有找到BOM');}}function rewrite($filename,$data){$filenum=fopen($filename,'w');flock($filenum,LOCK_EX);fwrite($filenum,$data);fclose($filenum);}?>


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 小孩子上课注意力不集中该怎么办 脸过敏干燥起皮怎么办 脸上皮肤干燥起皮怎么办 身上皮肤干燥起皮怎么办 皮肤暗黄有色斑怎么办 我皮肤干燥暗黄怎么办 脸上有皮肤暗黄怎么办 皮肤暗黄毛孔大怎么办 脸上很干燥起皮怎么办 脸上的皮肤起皮怎么办 身体的皮肤好干怎么办 滴油雾化器炸油怎么办 已经发炎的痘痘怎么办 被养生馆骗了怎么办 做完微针结痂了怎么办 秋季脸干燥起皮怎么办 身上的皮肤太干怎么办 板材眼镜腿松了怎么办 超声刀后喝酒了怎么办 开眼角疤痕增生了怎么办 开了眼角有增生怎么办 全切双眼皮留疤怎么办 开内眼角留疤了怎么办 开眼角长了颗粒怎么办 开刀后疤痕庝痛怎么办 眼角开得太尖了怎么办 眼角开得太大了怎么办 开眼角后增生了怎么办 下颌骨宽怎么办不整容 脸两边骨头太宽怎么办 接了睫毛眼睛疼怎么办 下颌骨错位脸歪怎么办 假体隆鼻感冒了怎么办 打了玻尿酸怀孕怎么办 鼻子上有出血点怎么办 内眼角开小了怎么办 上眼皮肿怎么办小妙招 嫁接的睫毛乱了怎么办 睫毛掉进眼睛里怎么办 痘痘留下的疤痕怎么办 宫颈癌前病变1级怎么办