网站建设
建站资讯Website News

您的位置:主页 > 营销知识 > 建站资讯 > 一键清理BOM的小程序

一键清理BOM的小程序

上海网站建设公司建站资讯2017-12-05

在我们进行网站开发的时候,我们可能会遇到网页源码正确却显示有问题的情况,这种情况一般是我们在进行更改的时候,使用了windows自带的编辑器进行代码编辑从而产生了BOM的缘故。

Bom解决方法较为简单,直接用专业软件如sublime或者notepad重新保存下就行了,但是如果页面比较多的话,那样处理起来就比较麻烦了。

垒越科技为了大家方便,特地编写了一个较为实用的PHP小程序,现将小程序分享如下:

<html>

<head>

<metahttp-equiv="Content-Type" content="text/html;charset=utf-8">

<title>清除BOM文件头--垒越科技定制</title>

</head>

<body>

<?php

//如果只清除单个目录BOM头,可以在php后面加上?dir=data 比如127.0.0.1/bom.php?dir=data

header('Content-type: text/html;charset=utf-8');

if (isset($_GET['dir'])){ //config thebasedir

$basedir=$_GET['dir'];

}else{

$basedir = '.';

}


$auto = 1;


checkdir($basedir);


function checkdir($basedir){

if($dh = opendir($basedir)) {

while (($file = readdir($dh)) !== false) {

  if($file != '.' && $file != '..'){

  if (!is_dir($basedir."/".$file)) {

   echo "filename: $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 found, automaticallyremoved.</font>");

 }else {

 return ("<font color=red>BOM found.</font>");

 }

}

elsereturn ("BOM Not Found.");

}


function rewrite ($filename, $data) {

$filenum = fopen($filename, "w");

flock($filenum, LOCK_EX);

fwrite($filenum, $data);

fclose($filenum);

}

?>

</body>

</html>

复制以上的代码到一个新建的bom.txt文件中,然后将bom.txt改为bom.php(注意这里是直接改了文件的后缀,不是改为bom.php.txt,如不会的可以先上传到服务器后改),然后上传到网站的根目录上,最后直接访问改文件即可运行小程序,达到一键清理网页BOM的功效。

最后说明一点的是,使用完成后最好删除该文件,否则容易让人爬取你网站的根目录了。


原文标题:一键清理BOM的小程序
欢迎您访问,如有疑问请联系客服
TAG,上海网站建设,上海网站制作,上海APP开发

最新案例

相关文章

更多最新文章

网站关键词

上海云轩网络版权所有 Copyright©2008-2018 http://www.lvon8.com All Rights Reserved 备案号:沪ICP备14049216号