require_onceを使って外部ファイルでPHPを読み込むようにしたら、なんだか微妙な表示のズレがでる。
他は何も変えていない。空白?
「?」が出てきたり、空白の1行みたいなものが現れて、表示が微妙にずれるのです。
なんだなんだーと検索して調べるも、よくわからない。
30分くらい格闘してあきらめようかと思ったら、見つけた。
保存の方法なのだ。
エディタはEZhtmlを使っていて、文字コードはUTF-8で保存している。
これだと、通常は問題ないけど、requireなどを使うとBOMがくっついてくるってワナらしい。
たまーに出てくるBOM。
正直言って、なんのためにあるかあんましらないし、邪魔であるw
Byte Order Markの略で、UTF-16などでは必要なものらしい。なんでUTF-8についてくんだ。
なので、保存するときにBOMなしになるUTF-8Nで保存したらうまくいきました。
ちなみにrequireで呼び出されるファイルを保存すればうまくいきました。
いやぁ、微妙なずれって本質的には問題ないけど、いらっとしますよね。