использование Zend View объекта в качестве постоянного хранилища - PullRequest
0 голосов
/ 14 августа 2011

, поэтому я смотрел этот урок:

http://devzone.zend.com/article/3412

и там написано, что

"В MVC Zend Framework в большинстве случаев заполнители не имеют смысла; поскольку по умолчанию один и тот же объект представления используется между всеми контроллерами и компоновкой, вы можете просто использовать переменные представления в качестве механизма постоянного хранения."

Может кто-нибудь объяснить мне, как работает этот «механизм постоянного хранения»? Я попытался перейти к файлу просмотра, установив $ this-> test = 'кое-что', а затем перейти к другому файлу просмотра и повторить $ this-> test

но ничего не вышло ....

Ответы [ 2 ]

2 голосов
/ 14 августа 2011

Если вы вызываете сценарии просмотра в рамках одного и того же запроса и последовательность верна, ваш тест будет работать.

view-script1.phtml
<h3>Test one</h3>
<p>nothing</p><?php $this->test = 'something'; ?>

view-script2.phtml
<h3>Test two</h3>
<p><?php echo $this->test; ?></p>

Если вы не видите два заголовка <h3> в правильной последовательности илиодин отсутствует, тогда вы неправильно вызываете сценарии просмотра.

Кроме того, лучшим примером для постоянного хранилища являются контроллеры.Если вы перенаправляете на другие действия или даже контроллеры, вы можете передавать данные через них

controller1/actionOne
$this->view->test = 'something';

controller2/actionTwo
$this->view->test .= ' more';

in your viewscript
echo $this->test;  // will print "something more"
0 голосов
/ 14 августа 2011

постоянное хранилище - это не что иное, как реестр статических функций, используемый классом Zend_View_Helper_Placeholder_Registry, поскольку это статическая функция, которую можно использовать совместно со многими объектами, поэтому она называется постоянством в контексте помощников представления, которые являются подклассами этого заполнителя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...