Есть ли PHP веб-фреймворк, который не использует шаблоны? - PullRequest
1 голос
/ 29 сентября 2011

Я ищу PHP-фреймворк, который позволил бы мне создавать HTML не через систему шаблонов, такую ​​как Smarty или Twig (которая мне действительно не нравится), но непосредственно из моих классов представления, с помощью таких методов, как:

$this->elementStart('div', array('id' => 'header',
                                 'class' => 'cls'));
...
$this->elementEnd('div');

StatusNet делает это, но на самом деле это не универсальная структура.Существуют ли фреймворки, которые работают таким образом?

Ответы [ 3 ]

0 голосов
/ 29 сентября 2011

На данный момент очень быстро DooPHP . И вы можете написать свой собственный шаблон над PHP. Но я не вижу смысла.

0 голосов
/ 29 сентября 2011

да, есть Yii Framework .. Это позволяет оба. Если вы не хотите применять какой-либо шаблонный вызов, используйте renderPartial () вместо render (). Пожалуйста, обратитесь к http://www.yiiframework.com/doc/guide/1.1/en/basics.view

0 голосов
/ 29 сентября 2011

Вы можете проверить Yii.Нет такой системы шаблонов, как Smarty или что-то в этом роде, у вас есть только файлы представления с HTML и любые переменные PHP, которые вы передаете из своих контроллеров.

РЕДАКТИРОВАТЬ : Вот старый пример, который я нашел, не было ссылки, поэтому я просто вставил.Материал, ссылающийся на «виджет» и т. Д., Является просто компонентом фреймворка, а не материалом движка шаблонов.

</p> <pre><code> <!-- blueprint CSS framework --> <link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/css/screen.css" media="screen, projection" /> <link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/css/print.css" media="print" /> <!--[if lt IE 8]> <link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/css/ie.css" media="screen, projection" /> <![endif]--> <link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/css/main.css" /> <link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/css/form.css" /> <title><?php echo CHtml::encode($this->pageTitle); ?></title> </head> <body> <div class="container" id="page"> <div id="header"> <div id="logo"><?php echo CHtml::encode(Yii::app()->name); ?></div> </div><!-- header --> <div id="mainmenu"> <?php $this->widget('zii.widgets.CMenu',array( 'items'=>array( array('label'=>'Home', 'url'=>array('/site/index')), array('label'=>'About', 'url'=>array('/site/page', 'view'=>'about')), array('label'=>'Contact', 'url'=>array('/site/contact')), array('label'=>'Login', 'url'=>array('/site/login'), 'visible'=>Yii::app()->user->isGuest), array('label'=>'Logout ('.Yii::app()->user->name.')', 'url'=>array('/site/logout'), 'visible'=>!Yii::app()->user->isGuest) ), )); ?> </div><!-- mainmenu --> <?php if(isset($this->breadcrumbs)):?> <?php $this->widget('zii.widgets.CBreadcrumbs', array( 'links'=>$this->breadcrumbs, )); ?><!-- breadcrumbs --> <?php endif?> <?php echo $content; ?> <div id="footer"> Copyright &copy; <?php echo date('Y'); ?> by My Company.<br/> All Rights Reserved.<br/> <?php echo Yii::powered(); ?> </div><!-- footer --> </div><!-- page --> </body> </html>

...