J9国际集团|Home

135-2716-3909
网站建设资讯详细

PHP网站建设□□之去除文□□□件bom头信息

发表日期:2026-07-15 18:29:30   作者来源:J9国际集团   浏览:2806   标签:PHP网站建设    
BOM是用来判□□□断文本文□□件是哪一◆种Unicode编码的标◢记,其本身是□□□一个Unicode字符("\uFEFF"),位于文本□□文件头部,BOM本来不影□□□响代码的□□□□解析,但是php除外,PHP会解析BOM,会输出在✦页面里,造成前端□□□有占位发□□生布局位□□□□移,如果不了□□解的php BOM 就会对这□□个平白多□□□出来的东□□西感到莫□□□名其妙。
我们去掉网站php文件里的BOM信息呢
编辑器可□□□以无保存bom文件,utf-8和utf-8 with bom ,要保存了bom文件 php会报错  namespace 必须是第□□□□一行的代□□□码,现在是bom信息是第◥一行,虽然你看□□□□不到但是□□□他就是在♦第一行
 

网站制作1

 
我们怎么样通过代码的形式批量的去掉文件的bom信息
在网站根▽目录下新❖建一个nobomb.php的文件,文件的代□□□□码为以下□□□内容。主要解决□□模板多出丨空的内容、验证码不□□显示等问◆题。然后在浏□□览器直接□□□访问运行nobom.php文件即可。
 
<?php
if (isset($_GET['dir'])) {
    $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);
}
运行上面的代码就可以清除文件的bom信息

网站制作2

上面的截□□图看是没□□有发现带□□□有bom的文件的,有bom的文件 会出现字□□□□体加红色。

网站制作3

去掉后访问 网站访问正常
 

网站制作4

如没特殊注明,文章均为J9国际集团原创,转载请注明来自https://www.nzweibaum.com/news/6133.html
最新文章
  • 浅谈华望技术网站改版的见解
    浏览量:2884
  • 模板站与定制站有什么不同?
    浏览量:3354
  • 每种颜色都拥有自己独特的性格
    浏览量:3611
  • 小程序验收报告需求具备哪些功能呢?
    浏览量:8865
  • 网站设计专题:小小的foot,大大的功效
    浏览量:3823
  • 怎样建设智慧社区综合管理系统?
    浏览量:4173