PHPの閉じタグ ?> の後に改行を出力する方法
2008年09月04日 10:24
これ常識なのかなあ。
知らなかったので書いときます。
PHP では
<?php と ?> で囲まれた部分が PHP のコード、
それ以外の部分が HTHL と見なされる。
「デザインとロジックを分離」すれば
両者が混在することはないんだけど、
たとえば CakePHP の view の中には
どうしても PHP のコードを書くことになる。
こういう場合にちょっと困るのが
PHP の閉じタグ ?> のあとの改行が無視される点。
例えばこう書くと
こんなふう(一部略)に出力されてしまって
何だか見栄えがよくない。
そんなこまいことは気にせずに
さっさと開発を進めた方がいいとも思うんだけど、
せめてインデントくらいは揃えたいところ。
これを解決するのにすぐ思いつく方法は次の2つ。
- ?> の改行後にもうひとつ空行を入れる。
- PHP を閉じる前に改行コードを出力する。
でもそれだと今度は
PHP のコードの方が見づらくなってしまうし
余計なものが入るから何だかスマートじゃない。
これはもう仕方ないかなあ、と思っていたのだが、
もう一つ方法があることを知った。
- ?> の後にスペースを入れる。
つまりこういうこと。
_ の部分に半角スペースをひとつ入れるという意味ね。
これでちゃんと ?> の後に改行が入った。
これだって結局余計なものを入れてるので
やっぱりスマートじゃないかもしれないけど
少なくともその前の2つの方法よりはマシだと思う。
というわけで当面この方法を使ってみることにした。
なお「これだから PHP は…」というのは聞こえません。
関連エントリ
前後のエントリ
トラックバック








