thinkphp 框架去掉bom(当你的网站出现头部有一条空白)

原创 2013年12月02日 15:46:40

当你的项目头部无缘无故出现了一条白条,这个是utf8文件编码可能是utf8-bom如果不是,文件本身编码问题的话!那木就是thinkphp自身对文件进行utf-8-bom编码,此时去掉白条的方法就是,在项目根目录,执行此段代码!ok了


<?php



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


  $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,automatically removed.</font>");


    } else{


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


    }


  }


  else return("BOM Not Found.");


}


function rewrite ($filename, $data) {


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


  flock($filenum, LOCK_EX);


  fwrite($filenum, $data);


  fclose($filenum);


}


?> 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

PHP批量检测并去除文件BOM头代码实例 &#65279导致空白行解决办法

因为文件头信息输出BOM头信息,有时会对程序的执行结果造成影响,那么此时即应对这些文件的BOM信息进行去除 如下代码为PHP方式去除当前目录及子目录所有文件BOM信息的代码,新建文件,将其放倒根...

OkHttp和Volley对比

OkHttp物理质量使用OkHttp需要 okio.jar (80k), okhttp.jar(330k)这2个jar包,总大小差不多400k,加上自己的封装,差不多得410k。功能介绍Square...

HTML5模仿刮奖效果-页面涂抹消失插件wScratch

本文转至:http://www.xuanfengge.com/html5-imitates-scratch-effect-disappear-page-smear-plug-in-wscratch.h...
  • yzbben
  • yzbben
  • 2017年03月10日 16:31
  • 451

使用ThinkPHP框架快速开发网站(多图)

使用ThinkPHP框架快速搭建网站          这一周一直忙于做实验室的网站,基本功能算是完成了。比较有收获的是大概了解了ThinkPHP框架。写一些东西留作纪念吧。如果对于同样是Web方...

使用ThinkPHP框架快速开发网站(多图)

使用ThinkPHP框架快速搭建网站          这一周一直忙于做实验室的网站,基本功能算是完成了。比较有收获的是大概了解了ThinkPHP框架。写一些东西留作纪念吧。如果对于同样是Web方...
  • ruby97
  • ruby97
  • 2012年05月17日 10:30
  • 297448

采用ThinkPHP3.2.3框架开发网站快速入门

开发环境 [x] WampServer Version 2.4 [x] ThinkPhp3.2.3 项目目录结构说明www WEB部署目录(或者子目录) ├─index.php 前台应用...
  • FreeApe
  • FreeApe
  • 2015年10月22日 12:31
  • 3385

使用ThinkPHP框架快速搭建网站(通俗易懂)

使用ThinkPHP框架快速搭建网站          这一周一直忙于做实验室的网站,基本功能算是完成了。比较有收获的是大概了解了ThinkPHP框架。写一些东西留作纪念吧。如果对于同样是Web方...

使用ThinkPHP框架快速搭建网站

这一周一直忙于php+myaql。比较有收获的是大概了解了ThinkPHP框架。写一些东西留作纪念吧。如果对于同样是Web方面新手的你有一丝丝帮助,那就更好了挖。        以前用PHP做过...

使用ThinkPHP框架快速搭建网站【转】

原文地址:http://blog.csdn.net/ruby97/article/details/7574851 使用ThinkPHP框架快速搭建网站          这一周一直忙于做实验室的...

使用ThinkPHP框架快速搭建网站

转自 http://blog.csdn.net/ruby97/article/details/7574851/  这一周一直忙于做实验室的网站,基本功能算是完成了。比较有收获的是大概了解了...
  • dusea
  • dusea
  • 2015年11月02日 09:24
  • 666
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:thinkphp 框架去掉bom(当你的网站出现头部有一条空白)
举报原因:
原因补充:

(最多只允许输入30个字)