私は、PHPの醜さが引き起こす可能性のある恐怖と足の射撃の程度を直接体験しました。私は次のプロジェクトに取り組んでいます(なぜ私が言語を切り替えるだけではないのか疑問に思われるかもしれませんが、それが私がここにいる理由ではありません)。
いくつかのモデルを定義し、メインコントローラーから始めました。私は、ビューを実装する方法についての私の決定の分岐点にいます。これまでのところ、メインコントローラーには呼び出す表示機能のリストを指定でき、1回の呼び出しでページ全体を吐き出すことができます。次のようになります。
function Parse_Body()
{
foreach ($this->body_calls as $command)
{
$call = $command['call'];
if (isset($command['args'])) $call($command['args']);
else $call();
}
}
私のジレンマはこれです:
すべての表示関数が生成したHTMLを返すようにして、メインコントローラーがecho $page;
PHPの外部で生のHTMLを使用できるようにするか、または使用する必要があります。これは、読み取られるとすぐに出力されます。
前者を使用すると、メインのアプリコントローラーは、ディスプレイの気まぐれに完全な制御を放棄することなく、出力を取得するタイミングを正確に制御できます。言うまでもなく、呼び出す表示関数のリスト(上記)はすべて、渡されない限り、表示ファイルから実際に実行することはできません。後者の方法では、巨大なPHP文字列ブロックを実行する代わりに、実際のHTMLでHTMLを実行できるという利点があります。さらに、関数を呼び出す代わりに、ファイルをインクルードして実行することもできます。したがって、その方法では、ファイルは関数のようなものだと思います。
何か入力やアドバイスをお願いしますか?