Laravel Templating鸟瞰图

时间:2013-01-02 13:29:13

标签: php templates laravel

我无法弄清楚如何在没有Blade的情况下将几个视图合并到一个部分。

Conroller:

public $layout = 'layouts.template';
action_index{
    $this->layout->nest('content', 'view1');
    $this->layout->nest('content', 'view2');
}

的template.php:

<?php echo Section::yield('content'); ?>

view1.php:

<?php Section::start('content');?>
div1....
<?php Section::stop(); ?>

view2.php:

    <?php Section::start('content');?>
div2....
<?php Section::stop(); ?>

现在 - 它只显示view2

如何实现这样的目标:

$content = View::make('view1');
$content = View::append('view2'); // append view2 to view1?
$this->layout->with('content', $content);

1 个答案:

答案 0 :(得分:2)

$content = View::make( 'view1' ) . View::make( 'view2' );

这应该有效。在View类中有一个__toString魔术方法,所以当它遇到字符串连接运算符时,它会被渲染为一个字符串。 $ content将是一个包含两个渲染视图中的HTML的字符串。