zoukankan      html  css  js  c++  java
  • 批量去除PHP文件中bom的PHP代码

    今天搜索查看网页源码时为什么开头会有空行这个问题时找到的,批量去除PHP文件中bom的PHP代码
     
     
    需要去除BOM,就把附件里的tool.php文件放到目标目录,然后在浏览器访问tool.php即可! 
    <?php
    /*检测并清除BOM*/  
    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);  
                    }  
                }  
            }//end while  
        closedir($dh);  
        }//end if($dh  
    }//end function  
    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.");  
    }//end function  
    function rewrite($filename, $data){  
        $filenum = fopen($filename, "w");  
        flock($filenum, LOCK_EX);  
        fwrite($filenum, $data);  
        fclose($filenum);  
    }//end function  
    ?>
  • 相关阅读:
    php练习题之裁判打分
    OPENSUSE:安装方式
    openSUSE:下载帮助
    安装mysql时出现HTTP&nbsp;500&nbsp;内部服务…
    关于wamp启动是80端口被占用的问题…
    推荐15款好用的JS开发工具
    u盘美化
    wordpress怎么修改地址栏小图标
    显示桌面图标不见了
    站长必备的131个高权重外链库(转…
  • 原文地址:https://www.cnblogs.com/meetrice/p/2750800.html
Copyright © 2011-2022 走看看