Не хотите, чтобы короткий тег Zend Framework View. Есть ли альтернатива $ view-> setUseStreamWrapper (true)? - PullRequest
2 голосов
/ 11 июля 2010

Я пытаюсь изучить Zend Framework, мой первый фреймворк, и я наткнулся на раздел View.Для того, чтобы выводить данные из контроллера в представление, я должен использовать короткие теги.Я не хочу делать это из-за XML.Единственный вариант, который я нашел до сих пор, это $view->setUseStreamWrapper(true), который, очевидно, снижает производительность.Мне было интересно, есть ли какие-либо альтернативные решения (кроме $view->setUseStreamWrapper(true))?

Заранее спасибо.

Извините, вот пояснение:


application/views/scripts/index/index.phtml

`Escape($this->name);?> from Zend Framework


Вместо<code><?= $ this-> Escape ($ this-> name);?> , я хочу использовать длинные теги <?php= $ this-> Escape ($ this-> name);?>.Но это не похоже на работу.Zend Framework заставляет нас использовать короткие теги нет?

Ответы [ 4 ]

2 голосов
/ 11 июля 2010

Вы можете использовать

<?php echo $this->escape($this->name); ?>

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

php_value "short_open_tag" "on"
1 голос
/ 11 июля 2010

Я не совсем уверен, что вы спрашиваете, но вы не должны использовать короткие теги, вы можете использовать длинные.Вы также можете использовать короткие теги, не используя $view->setUseStreamWrapper(true), вам просто нужно включить короткие теги в вашем php.ini (вы также можете установить их в своем скрипте, но я не уверен) Я верю всем $view->setUseStreamWrapper(true)Он предварительно анализирует ваш сценарий и превращает <? в <?php.
Что касается снижения производительности, то, по моим наблюдениям, ZF работал медленно, независимо от того, что вы делаете.Кажется, что Zend-люди вкладывают в структуру тонну вещей, в которых нет никакого бизнеса, кажется, что это просто огромный зверь, который пытается сделать все, и в итоге он делает все это плохо.Может быть, только я.

1 голос
/ 11 июля 2010

Если вы имеете в виду <? Тогда нет, вам не нужно использовать их , вы можете использовать их Просто используйте <?php вместо.
Я не вижу, как $view->setUseStreamWrapper связан с вопросом.

<?=

будет переводиться на

<?php echo
0 голосов
/ 11 июля 2010

Я хочу использовать длинные теги Escape ($ this-> name);?>

Это не длинный и недействительный тег.В PHP нет такого синтаксиса
Если вы хотите использовать длинные теги, вы должны сделать его

<?php echo  $this->Escape($this->name);?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...