`
lan13217
  • 浏览: 483055 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

php utf-8编码去bom小工具

    博客分类:
  • PHP
阅读更多
RIA知识库
flex
RIA
网上找到了一个PHP函数,可以删除UTF-8编码中的BOM,当然也可以使用UE等文本编辑器了
<?php     
//此文件用于快速测试UTF8编码的文件是不是加了BOM,并可自动移除     
$basedir="."; //修改此行为需要检测的目录,点表示当前目录     
$auto=1; //是否自动移除发现的BOM信息。1为是,0为否。     
//以下不用改动     
if ($dh = opendir($basedir)) {     
    while (($file = readdir($dh)) !== false) {     
        if ($file!='.' && $file!='..' && !is_dir($basedir."/".$file))    
            echo "filename: $file ".checkBOM("$basedir/$file")." <br>";     
    }     
    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);     
}     
?>   

分享到:
评论

相关推荐

    字符编码转换类,支持 ANSI、Unicode、Unicode big endian、UTF-8、UTF-8+Bom互相转换

    php 字符编码转换类,支持ANSI、Unicode、Unicode big endian、UTF-8、UTF-8+Bom 互相转换。

    UTF-8 批量检测BOM工具/小软件 utf8 BOM批量检测/检查清除

    前次一次工程开发,有...本压缩包附带GB/BIG/UTF-8文件编码批量转换工具(文件名:GB2UTF81.exe) 这个工具很好很强大 还有一个bom批量检测清除工具,php版本的。只可惜只支持当前目录。不支持子目录(文件名:bom.php)

    批量去除utf-8的bom头(php版)

    UTF-8不需要BOM来表明字节顺序,但可以...字符"ZERO WIDTH NO-BREAK SPACE"的UTF-8编码是EF BB BF。所以如果接收者收到以EF BB BF开头的字节流,就知道这是UTF-8编码了。 Windows就是使用BOM来标记文本文件的编码方式的

    此文件用于快速反查php文件中的UTF8编码的文件是不是加了BOM,有则显示,无则跳过。(php源码)。

    如何解决BOM:先放在服务器可执行目录下,使用 浏览器http://服务器ip/存放路径/bom.php来 访问,填写实际路径执行后可得到存在有BOM的PHP文件,然后再用notepad++打开,在菜单选“格式”-&gt;“转为UTF-8无BOM..”即可. ...

    php检测文件夹下有含BOM的UTF-8的文件

    php检测文件夹下有含BOM的UTF-8的文件列表

    php UTF-8、Unicode和BOM问题

    UTF-8签名(UTF-8 signature)也叫做BOM(Byte Order Mark),是UTF编码方案里用于标识编码的标准标记。BOM,是UTF编码方案里用于标识编码的标准标记,在UTF-16里本来是FF FE,变成UTF-8就成了EF BB BF。这个标记是...

    php页面,mysql数据库转utf-8乱码,utf-8编码问题总结

    PHP页面转UTF-8编码问题 1.在代码开始出加入一行: header(“Content-Type: text/html;charset=utf-8”); 2.PHP文件编码问题 点击编辑器的菜单:“文件”-&gt;“另存为”,可以看到当前文件的编码,确保文件编码为:...

    php中隐形字符65279(utf-8的BOM头)问题

    今天在CSDN看到一个php输出空白隐形字符65279的问题,在网上找了下,发下这个65279字符是php用来标记文件是utf-8编码的,输出的时候会一起输出到客户端,导致客户端如果使用ajax得到返回值时,无法匹配字符串。...

    PHP实现UTF-8文件BOM自动检测与移除实例

    BOM信息是文件开头的一串隐藏的字符,用于让某些编辑器识别这是个UTF-8编码的文件。但PHP在读取文件时会把这些字符读出,从而形成了文件 开头含有一些无法识别的字符的问题。 比如用UTF-8格式保存的生成图片的PHP...

    PHP乱码问题,UTF-8乱码常见问题小结

    一.HTML页面转UTF-8编码问题 1.在head后,title前加入一行: &... 3.HTML文件头BOM问题: 将文件从其他的编码转换成UTF-8编码时,有时候会在文件的最开始加上一个BOM标签, 在个BOM标签可能会导致浏览器在显示中文的时

    文件编码批量转换程序

    1.21 -- 生成 UTF-8 时可选是否带BOM(标示自身编码方式和字节 序的特殊字串,BYTE ORDER MARK) 1.2 -- 添加在转换过程中进行文件内容添加、替换功能;该功能使本软件也 能作为一个文本替换软件使用。 1.1 -- 未...

    风吟PHP BOM移除工具.rar

    类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。对于...

    php和mysql中uft-8中文编码乱码的几种解决办法

    PHP页面转UTF-8编码问题 1.在代码开始出加入一行: 复制代码 代码如下: header(“Content-Type: text/html;charset=utf-8”); 2.PHP文件编码问题 点击编辑器的菜单:“文件”-&gt;“另存为”,可以看到当前文件的编码,...

    PHP 下载文件时如何自动添加bom头及解释BOM头和去掉bom头的方法

    在utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码,现在已经有很多软件识别bom头,但是还有些不能识别bom头,比如PHP就不能识别bom头,这也是用记事本编辑utf-8编码后执行就会出错的原因...

    deletebom.php

    类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。对于...

    PHP批量去除BOM头内容信息代码

    在utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码,现在已经有很多软件识别bom头,但是还有些不能识别bom头,比如PHP就不能识别bom头,这也是用记事本编辑utf-8编码后执行就会出错的原因...

    PHP和Mysql中转UTF8编码问题汇总

    PHP页面转UTF-8编码问题 1.在代码开始出加入一行: header(“Content-Type: text/html;charset=utf-8”); 2.PHP文件编码问题 点击编辑器的菜单:“文件”-&gt;“另存为”,可以看到当前文件的编码,确保文件编码为:UTF...

Global site tag (gtag.js) - Google Analytics