Layout
の変数を使用するタイミングとView
、ページのページ セグメントを取得するために の変数を使用するタイミングがわかりません。これは彼らのLayout
パッケージチュートリアルの写真です(どこでもインスタンス$this
を意味しView
ます):
なぜNavigation
、Content
およびSidebar
セグメントはLayout
変数として取得されるのですか?
$this->layout()->nav;
しかしHeadTitle
、、、 ViewHeadScript
からHeadStylesheet
そのまま取得できますか?
$this->headTitle(); // I know that this is a placeholder view helper.
// But this segment of the page logically belongs to Layout.
// and it has to be called smth like view->layout->placeholder
そして、なぜHeader
とFooter
はのプロパティではなくのpartial
メソッドからのものなのですか?View
Layout
$this->partial('header.phtml');
私はそれらを変更しようとしましたが、両方の方法でうまくいきます:
echo $this->nav; // I assigned navigation segment script to the View and it works;
Footer
にセグメントスクリプトを割り当てようとしましたがLayout
、それも機能します:
$layout->footer = $footer;
echo $this->layout()->footer; // it also works, it's displayed on the page
どの方法でも、ページ上の任意の変数に適用できます。たとえば、Navigation
セグメントには表示する変数がたくさんあり、両方の方法を使用してそれらを出力できます-1つの変数をLayout
のプロパティとして、別の変数を saView
のプロパティとして。
では、それらを正しい方法で使用するためのルールは何ですか? View
の変数と の変数はいつ使用する必要がありLayout
ますか?