私はCakePHPを使って以来、基本的にすべてのPHPコードがタグで囲まれたHTMLファイルであるCTPファイルの推奨構文のより深い意味について尋ねました。私はこれを読むのが非常に難しいと思っています。私は、HTMLとPHPの間のコンテキストの切り替えによってパフォーマンスが低下すると考えるべきです。 文字列内のすべての出力を収集して最後にエコーする方が、より迅速かつ明確になるでしょうか? しかし、確かにいくつかのより深い意味があり、ちょうど私は自分自身をより明確にするために... それを見ていないことを、ここでは例です:CakePHPテンプレート(ビュー)の推奨構文
のCakePHP:
<?php if (!empty($file['User']['email'])): ?>
<div class="mailto"><?php echo $this->Html->link($file['User']); ?></div>
<?php endif; ?>
<?php if (!empty($file['Document']['comments'])): ?>
<div class="file-comment file-extra column grid_6">
<div class="content"><?php echo $file['Document']['comments']?></div>
</div>
<?php endif; ?>
私のアプローチ:
<?php
$out = '';
if (!empty($file['User']['email'])) {
$out .= '<div class="mailto">'.$this->Html->link($file['User']).'</div>';
}
if (!empty($file['Document']['comments'])) {
$out .= '<div class="file-comment file-extra column grid_6">'
.'<div class="content">'.$file['Document']['comments'].'</div>'
.'</div>';
}
echo $out;
?>
私の質問は:CakePHPに比べて私のアプローチの欠点は何ですか?
'コンテキストは、HTMLとPHPを切り替えるいくつかのパフォーマンスのpenalty'を追加する - これは存在しません。質問の書式設定に示されているように、明らかな欠点の1つは、コードの書式設定を失うことです。しかし、質問は[意見に基づいているので、トピックから外しています](http://stackoverflow.com/help/on-topic)。 – AD7six
どちらのコード例も読みにくいです - IMO。私は個人的にあなたのアプローチがさらに悪いと思っています。それは、言語やその構文ではなく、書式設定とインデントの問題です。推奨読書:https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882 – burzum
私は、改行と字下げを追加することはありませんでした。改行/字下げを追加する以外は、どうやって別の方法で記述しますか?おそらくそれを行うには全く別の方法がありますか?提案は大歓迎です。 –