2014-03-03 52 views
0

我剛剛安裝了laravel 4.1。我不是模板語言的忠實粉絲,所以我只想使用常規的php來進行模板。但是,我確實喜歡繼承和laravel提供的部分。我已經看到了使用部分像這樣的例子:PHP模板在Laravel 4

<?php Section::start('content'); ?> 
    Test Content 
<?php Section::stop(); ?> 

然而,當我嘗試這對我安裝我得到:

Class 'Section' not found 

當我嘗試用刀片模板做它工作正常但不是一個常規的PHP模板。我找不到任何關於普通php模板的文檔,我只能找到關於blade的文檔。這在新版本中不可用還是已更改?任何鏈接或幫助將不勝感激,因爲谷歌搜索不斷得出如何使用刀片模板的結果。

回答

1

你實際上Illuminate/View/Environment.php尋找View

<!-- layuts/mastrer.php --> 

<body> 
    <?php echo View::yieldContent('content'); ?> 
</body> 

<!-- views/home/index.php --> 

<?php View::startSection('content'); ?> 

    <?php echo 'Welcome ' . $name; ?> 

<?php View::stopSection(); ?> 

BaseController類:

protected $layout = 'layouts.master'; 

protected function setupLayout() 
{ 
    if (! is_null($this->layout)) 
    { 
     $this->layout = View::make($this->layout); 
    } 
} 

HomeController類:

public function ShowHome() 
    $this->layout->title = 'Laravel -> Lout'; 
    $this->layout->content = View::make('home.index', ['name' => 'Sheikh Heera']); 
} 

但是,如果您使用這些功能,那麼爲什麼不使用blade

+0

謝謝你的幫助。我現在能夠正常工作,但是我唯一無法解決的事情是在視圖中擴展布局。防爆。與刀片它將@extends('layous.default'),但通過該類看起來似乎並不像它支持與PHP引擎。我看到你可以在控制器中執行它,但我更願意在模板中控制它。我不想使用刀片,因爲我寧願將我的模板分開。如果我要去另一個框架,我可以保留這些模板,並將數據發送到我可能無法使用的刀片上。 – ngreenwood6

+0

這根本不可能:-) –