最近合作开发项目 总发现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'