2

簡単な質問があります

私のコードはどこが間違っていますか?

インデックスコントローラとインデックスアクションで

置いた

$this->view->username="user1";

レイアウトを試してみると、

echo $this->username;

フローエラーまたはnull値が発生しました

注意:115行目のD:\ Zend \ Apache2 \ htdocs \ test \ application \ layouts\layout.phtmlで非オブジェクトのプロパティを取得しようとしています

ありがとう

4

2 に答える 2

0

試しましたecho $this->view->usernameか?

于 2010-03-30T09:54:52.830 に答える
0

変数をエコーし​​ようとしているレイアウトは、ビューではありません。

本来、あり得ない。説明させてください:あなたのレイアウトはグローバルなレイアウトです。IndexController の indexAction() に固有のものは、たとえば FooController のbarAction()を呼び出すことになった場合、レイアウトにこの変数がないため、グローバル レイアウトでは論理的に利用できません (/あるべきです)

ビューは views/scripts/index/index.phtml にあります-そこで使用できます<?php echo $this->username; ?>

レイアウトで変数をまだ使用していませんが、これはドキュメントから収集しているものです。レイアウトに変数を表示する場合$this->_helper->layout->username = "user1"は、アクションで使用してみてくださいecho $this->layout()->username。これにより、レイアウトで使用できるようになります。

ただし、レイアウト変数を使用する場合は、各アクションにも設定する必要があることに注意してください。indexAction()でユーザー名を表示したいだけの場合は、エコーをビューに入れてみてください。

于 2010-03-30T10:07:18.823 に答える