最近合作开发项目 总发现php输出的不对 代码一模一样也不行 后来机智的我感觉是编码有问题 发现都是utf-8 的 最后把文件内容都删除之后发现还有3个字符大小 用vim -b 命令打开之后发现是 感觉问题就出在这里了。
后来才发现 这是utf-8里面的 bom , 恶心的是bom 会随着echo 输出 导致不对。
附上几个命令 查找和去除bom
在vim 中:
java代码
#设置utf-8编码
:set fileencoding=utf-8
#添加bom
:set bomb
#删除bom
:set nobomb
#查询bom
:set bomb?
grep:
java代码
// 查找
grep -i -r -l $'\xef\xbb\xbf' /path
//替换
grep -i -r -l $'\xef\xbb\xbf' /path | xargs sed -i 's/^\xef\xbb\xbf//g'