Moonless.net首页

Cutsin受难记

Home Blog 归宿美林湾 Labs

2008年8月15日星期五

PHP vs UTF-8(BOM)

引子1:
虽然UTF-8 BOM是国际标准,将来的趋势也是如此,但php在设计时就没有考虑BOM的问题,直到php6才获得支持;
php6以前在读带有BOM的文件时,会把本应不显示的bom头(EF BB BF)当作正文字符(FEFF或)输出(现象可能是在页面顶部出现一个空行、扰乱页面或文件显示等),给我们带来很多不必要的麻烦

引子2:
php工程师可能会直接使用我们带BOM的页面模板,而很多编辑器会忽略bom,直接或间接不显示、不转换,往往php工程师不会注意到这些事,这样出来的模板,就会出现引子1的糟糕情况(以前在邮箱、space1.0项目中均出现过此问题),如果不清楚原因,问题排查就会比较麻烦

解决方法:
用能使用正则替换的编辑器查找:\ufeff,替换为空就行了

问题:
在php6普及之前,恐怕像我这样习惯在创建html及css时加BOM的朋友们要忍一忍了

标签:

收藏到网摘:新浪VIVI  365Key  POCO网摘  和讯网摘  我摘

0 条评论:

发表评论

订阅 博文评论 [Atom]

<< 主页