導入

Zend_Layout は、 有名な「ツーステップビューパターン」を実装したものです。 開発者は、アプリケーションのコンテンツを別のビューの中に埋め込むことができます。 この「別のビュー」は、通常はサイトのテンプレートとなります。 このようなテンプレートのことを、他の多くのプロジェクトでは レイアウト と呼んでいます。 そこで Zend Framework でもその用語を使用することにします。

Zend_Layout の目標を以下にまとめます。

  • Zend Framework の MVC コンポーネントと組み合わせて使用する際に、 レイアウトの選択とレンダリングを自動化する。

  • レイアウト関連の変数やコンテンツに対して個別のスコープを用意する。

  • レイアウトの名前やレイアウトスクリプトの解決 (インフレクション)、 レイアウトスクリプトのパスなどを設定できるようにする。

  • レイアウトを無効にしたり、 レイアウトスクリプトやその他の状態を変更したりできるようにする。 これらの操作はアクションコントローラおよびビュースクリプトの両方から行えるようにする。

  • ViewRenderer と同じルール (インフレクション) でスクリプトの解決を行うが、 別のルールも使用できるようにする。

  • Zend Framework の MVC コンポーネント以外からも使用できるようにする。