zoukankan      html  css  js  c++  java
  • php去除bom

    <?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")." ";  
                    }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  
    ?>
  • 相关阅读:
    memcache详解
    redis详解
    laravel5表单验证
    MySQL添加字段和修改字段
    delete和truncate区别
    IOC 和DI(转载)
    JPA和SpringData知识梳理
    spring和springmvc配置分离
    springboot 整合 mybatis
    mongodb安装及配置
  • 原文地址:https://www.cnblogs.com/nowphp/p/5859723.html
Copyright © 2011-2022 走看看