2011-09-28 87 views
1

我正在尋找一個PHP框架,它允許我創建HTML,而不是像Smarty或Twig(我真的不喜歡)這樣的模板系統,但直接從我的視圖類中,通過如下方法:有沒有不使用模板的PHP Web框架?

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

StatusNet這樣做,但它不是一個真正的通用框架。有沒有任何框架可以這樣工作?

+0

我認爲大多數框架沒有內置作爲核心功能的模板,或者可以以沒有太多麻煩的方式進行工作。您想使用哪一個? –

+1

PHP本身就是一個模板系統。如果你這樣想,那麼他們都不會這麼做;)(即不使用模板) –

+0

@Pekka Symfony?還是CodeIgniter?實際上,我其實並沒有偏好。你認爲我可以將StatusNet的XMLWriter包裝類插入其中嗎? –

回答

0

您可以查看Yii。沒有像Smarty或任何其他模板的系統,只需將您的視圖文件與HTML以及從控制器傳遞過來的任何PHP變量相關聯即可。

編輯:我找到了一箇舊的示例視圖,沒有鏈接,所以我只是粘貼。引用「小部件」等的東西只是框架的組成部分,而不是模板引擎的東西。

<!-- 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> 

+0

我似乎無法找到Yii視圖的代碼示例 - 您有沒有鏈接到任何一個機會? –

0

在這一點上是非常快的DooPHP。你可以通過php編寫你自己的模板。但我沒有看到一個觀點。