项目更新后,发现某个接口返回的json中,多出来一个红点,导致json_decode()失败,返回数据为null,程出错。
后来经过比对,返回的json字符串中,的确多了出来3个字符。strlen出来,一个是255长,一个是258长,但我们又看不到。
后来,发给it圈内大佬打开,mac上有明显提示,多出来的3个字符
用bin2hex($str)转下或是json_encode,都可以看到
到此,可以确定是被加bom头的原因。
bom头,之前看文章有了解过,但自己没碰到过。
接下来的思路就是找出有bom的文件了,两种办法:
1、查git提交历史。
2、命令查找。find . -type f -print0 | xargs -0r awk '/^\xEF\xBB\xBF/ {print FILENAME} {nextfile}'
找到文件后,用Notepad++或其他工具转一下码,即可。