m6uのエンジニアっぽい日記

PHP利用開発やFuelPHP利用開発、PostgreSQL利用開発、Androidアプリ開発、CentOS7サーバー構築など、テクニカルでエンジニアっぽい内容の日記

PHPのプログラミングで大事なこと:アウトプットがHTMLの文法を乱していないこと

PHPのプログラミングの心得、みたいなものを少しまとめます

おそらく多くのPHPプログラミングを始めたばかりの人は、PHPのプログラミングを始める際にいきなりphpファイルをエディターで開いてコードを書き始めようとするかもしれません。
そういう人に向けて一言お伝えしたいことがあります。

PHPのアウトプットは、最終的にHTMLソースコードになるということ

PHP: PHP タグ - Manualから引用します:

PHP はファイルを解析して開始タグと終了タグ (<?php と ?>) を探します。 
タグが見つかると、PHP はコードの実行を開始したり終了したりします。 
このような仕組みにより、PHP を他のあらゆる形式のドキュメント中に 埋め込むことができるのです。
つまり、開始タグと終了タグで囲まれている 箇所以外のすべての部分は、PHP パーサに無視されます。

PHPからの出力(アウトプット)は、echo文やprint文などを使って行われますが、それらは開始タグ ~ 終了タグで囲った箇所と入れ替わる形で出力されます。
出力されたPHPの結果と、開始タグと終了タグの外側に元からあるHTMLコードとミックスされて、webブラウザに向かってレスポンスを返します。
webブラウザでは、受信できたHTMLソースコードを基にレンダリングして我々が処理結果を目にすることができるわけです。

そのため、PHPに慣れないうちはとくに、HTMLコードを書き始めるところから始める習慣をつけましょう。
作成するファイルの拡張子は「~.php」のままでもいいので、PHPのコードを書かずにHTMLコードを書き始めます。
DOCTYPE宣言、html5としての体裁、head要素とbody要素、など丁寧に書きます。
そして、ネット上にある文法チェックサービスにかけて、正しさを検証しながらイメージを固めていきます。

先にHTMLコードで下書きしてイメージを固めてから、部分的にPHPコードを組み込んでいくのが近道

どこをどうPHPの処理で置き換えて出力するのか、繰り返し箇所はどこか、なども考えながら、
仮のテキストを配置しながら文字装飾やスタイルシートを駆使して、見せ方を最初に固めてから、PHPのコードを書き始めることが大事です。
PHPやHTMLに慣れていないときこそ、この作業がその後の成果の完成度に大きく影響を及ぼします。

とくに、表示項目が多い「表組み」するときは、PHPのコードから書き始めてしまうとテーブルのタグ要素をつい忘れがちで、思ったレイアウトにならないということが発生しやすいです。
ヤバい箇所だけでも、まずはHTMLコードを書いて、どこをPHPコードで置き換えるのかをイメージしてから取り組んでください。