我一直很喜欢尝试新的WordPress theme,每隔不多久只要发现新鲜喜欢的主题就拿过来修改折腾后换上。但在不断变换主题的过程中,有一个问题我始终没有解决,这就是,除了主题默认提供的模板文件外,我自己新建的几个page如书签、图库、存档等总是在使用IE浏览器查看的时候出现变形错位。一开始我以为是主题本身设计的问题,后来发现别人和我用同样的主题却很正常,后来我以为是自己在修改page的时候注入其中的某些代码不完整,但检查或者换用默认模板的原始代码后情况依然如故,所以我一直疑惑自己是不是在哪个环节上出现了根本性的失误。

这个困扰着我的问题由于我自己平常是使用Firefox浏览而不时地被我忽略掉,因为在Firefox下一切正常,只有在每次修改或更换主题的时候才再次想起。考虑到可能浏览我blog的人中恐怕使用IE浏览器的还是更多,对于我这么注重完美的人,一想起这个问题真的蛮郁闷的。

下午又狠狠地考虑了一下这个问题,不断地变换关键词进行Google,看到了一篇《都是utf8惹得祸,成功解决主题变形问题》,里面提到他平常修改主题都是用windows自带的记事本,而用记事本修改后保存的php文件只是UTF-8编码,但是一般来说,php是不支持有BOM的,php文件应该保存为UTF-8无BOM类型,而windows记事本的UTF-8是有BOM的,这就会造成错误。

这简直击中了我命门!要知道,我新建的几个page根本全都是在windows自带的记事本里编写的代码,也就是说,它们保存后的php文件全都是有BOM的,是错误的。不管根本问题是不是在这里,我当然是首先要下载一个Notepad++来修改一下这几个page再说。全部转换为UTF-8无BOM编码格式,重新保存上传,再用IE浏览器一看,哇塞,竟然全都正常了。



5 Responses to “修改php文件要用UTF-8无BOM编码”

  1. 1
    Black-Xstar
    2008-10-6- 星期一 21:15    @reply     

    呵呵,搞定了就好。

  2. 2
    georgexsh
    2008-10-7- 星期二 14:30    @reply     

    这可以认为是php的bug,据说6会好

  3. 3
    omtv
    2008-10-7- 星期二 21:26    @reply     

    乜……
    就是这个问题。。。
    折腾了好久……

  4. 4
    sun
    2009-9-24- 星期四 22:17    @reply     

    可恶的utf-8的BOM 我今天修改CMS模板也是出现错位问题 ,百思不得其解 最后乱搜索才发现是 utf-8 BOM问题,TMD的一个utf-8还分有BOM和无BOM版本!!!

Trackbacks

  1. 编码 | Focus on (2014年8月27日)

Leave a Comment

Tags allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

提示/Tips可使用Ctrl+Enter快速提交留言出口成脏一律垃圾处理。

blank