1

我对所有这些 PHP 框架都很陌生。我曾经使用 phpbb 的模板函数、语言支持和会话创建了自己的框架。我把它们变成了一个模型视图框架。我认为这太复杂了,并寻找了一个新的框架。

现在我正在使用 laravel,它非常好,但我仍然不知道如何处理控制器和视图。这是我卡住的部分。

我通过在根文件夹中创建一个 file.php 并创建一个 .html 文件样式文件夹来使用我的 phpbb 框架。phpbb的框架可以通过调用渲染一个html文件

$template->set_filenames(array(
'body' => 'file.html'
));

但是我可以将每个变量从 controller.php 传递给 file.html,如下所示:

$template->assign_var('THREAD_ID', $row['id']);
$template->assign_var('THREAD_NAME', $row['title']);

even cycles were too easy

while ($row = $db->sql_fetchrow($result))
{
    $template->assign_block_vars('post_row', array
    (
        'ID'    =>  $row['post_id'],
        'COUNT' => $count++,
        'USERNAME' => $row['post_username'],
        'DATE' => $row['post_datetime'],
        'ENTRY' => $row['post_entry'],
    )
    );
}

 and then for rendering the view

 $template->set_filenames(array(
 'body' => 'file.html'
 ));

这是我在laravel中无法理解的。我正在使用它,但是当我将它用于另一个变量时,它给了我错误。

$this->layout->nest('content', 'index', array(
  'data' => 'pokeçu'
));

在文档中,他们仅针对一个变量做了示例。我不知道如何继续我的方式。

4

1 回答 1

3

我假设您使用的是 Laravel 3,因为那是当前的稳定版本。Laravel 文档中有一节介绍了这一点。基本上,您将以最适合您的应用程序的方式使用 View 类。记住,你的控制器方法(或路由闭包)总是会返回一些东西,通常是一个 View 实例。要将数据绑定到该视图,最简单的方法是使用 with($data[, $value]) ,其中 $data 是关联键值数组,或者 $data 是键而 $value 是值。例如:

public function get_index()
{
    $thread = array('id'=>23, 'name'=>'Skidoo');
    return View::make('home.index')->with($thread);
}

注意返回。您无需立即退货。您还可以实例化 View 对象,并将数据直接绑定到它:

public function get_index()
{
    $view = View::make('home.index');
    $view->thread = array('id'=>23, 'name'=>'Skidoo');
    $view->welcome = 'Welcome to My Site!';
    return $view;
}

除了文档之外,还有几本最近可用的教程书籍。查看 Laravel 网站http://laravel.com/上的学习部分

于 2013-01-04T19:27:04.657 回答