2014-02-18 2 views
0

Я случайно назвал представление внутри себя. Как и в,Zend Framework 2 странное поведение при вызове частичного представления рекурсивно?

detail.phtml

Я назвал

<div><?php echo $this->partial('company/company/detail.phtml') ?></div> 

который показал немного странное поведение, я был перенаправлен с http://test.localhost на http://www.test.localhost и сервер не найден ошибка пришла через. Почему это? Что делать, если нам нужно в какой-то ситуации мне нужно вызывать представления рекурсивно? Как мне это сделать?

+0

В вашей постановке вопроса есть двойное 'echo'. :-P – Bilal

+0

@Bilal жаль, что это был тип –

ответ

1

В detail.phtml, когда вы добавили строку

<div><?php echo $this->partial('company/company/detail.phtml') ?></div> 

Теперь эта линия является частью detail.phtml. Поэтому, когда эта частичная нагрузка имеет место, происходит другая частичная загрузка, и этот процесс переходит в цикл.

Так решение изменить частичную строку

<?php if (!isset($renderRecursive)): ?> 
    <div><?php echo $this->partial('company/company/detail.phtml', array('renderRecursive' => true) ?></div> 
<?php endif;?> 

Это будет только загружает частичный раз, следовательно, избавляя нас идти в петлю.

Смежные вопросы