BOM是位于文本文件开头的字节顺序标记,多数程序可识别,但如PHP等则不支持。为避免问题,需用特定方法去除PHP文件中的BOM头,具体操作可参考相关技术说明。
1、 通常情况下,用户使用Windows记事本(notepad.exe)将文本文件以UTF-8编码保存时,系统会自动在文件开头添加BOM标记。
2、 在Windows系统的WSL或Linux平台上查看该文本文件时,会显示其类型包含BOM头信息。
3、 用十六进制编辑器打开文件,可观察到BOM编码显示为0xEFBBBF。
4、 使用ltrim()函数可去除PHP中的BOM,该函数用于删除字符串左侧的空白或指定字符,具体用法由其语法和参数决定。
5、 以包含BOM头的1.php文件为例,该文件是一个简单的Hello World程序。通过2.php读取1.php的内容,识别并移除其中的BOM头信息,再将处理后的内容写入新的3.php文件中,最终生成的3.php即为不含BOM头的纯净版本,确保文件在后续使用中不会因BOM引发编码问题。
6、 2.php 源码内容如下所示
7、 PHP源码标识符号
8、 使用fopen函数打开名为1.php的文件。
9、 读取1.php文件中的内容
10、 重点:使用ltrim函数去除1.php文件开头的BOM头信息。
11、 新建一个名为3.php的文件
12、 利用fwrite函数将去除BOM头的1.php内容写入3.php文件中。
13、 关闭文件
14、 ?>
15、 运行php命令执行2.php,程序结束后自动生成新的3.php文件。
16、 用file和hexdump命令重新检查1.php,确认BOM头已被成功移除。
评论
更多评论