:別のオプションは一切echo
の呼び出しを必要としないプレーンなHTML、PHPへの飛び出しことであろう。これはあまりにも意見ですが、私はそれをはるかに簡単にテンプレートファイル、IEで別の構文を読むために見つける:
<?php if($something): ?>
<div id="something">
<?php echo $something->text ?>
</div>
<?php endif; ?>
そして、このようにして外に切り替えるには、私は限りHTMLが懸念しているとしてヒアドキュメントを使用するために見ることができる唯一の理由です。大量のHTMLを出力する関数がある場合、それらを変更して何らかの方法でファイルを含める必要があります。 IE。あなたはあなたのビューを除いてhtmlを入れ替える必要があり、それらのビューはあなたの関数やモデルを完全に別々にする必要があります。 examplのためにあなたがやるべきこと:
function getSomething($var){
if($var){
$html = <<< HTML
<div id="something">
$var->text
</div>
HTML;
}
}
これはobvioulsy simleの一例であり、実際にこの例では、そんなに悪いイマイチが、HTMLが複雑であれば、それは醜いjsut取得するために開始します。モデルクラスのメソッドの場合は、HTMLがどれほどシンプルであっても単純な悪ではありません。もちろん
getSomething($var, $template = 'something.php')
{
if($var){
ob_start();
include($template); // $var is accessible in something.php
return ob_get_clean();
}
return null;
}
インクルードは、キャッシングが
可能な重複:-)に来るわずかなパフォーマンスヒットが、厥になり、次のとおりです:[PHPでヒアドキュメントを使用するには理由があるIdは、以下のことのようなものを好みます?](http://stackoverflow.com/questions/5673269/is-there-a-reason-to-use-heredoc-in-php) – Wylie
@ワイリー:いいえ。その質問は「利点は何か」です。これは「何が欠点か」です。彼らが正反対の質問であることは明らかです! –
tut、tut、純粋なPHPファイルにHTMLはありません! HTMLファイルのPHPのほんの少しは大丈夫です。 –