我是所有这些PHP框架的新手。我曾经使用phpbb的模板函数,语言支持和会话创建了自己的框架。我把它们变成了模型 - 视图框架。我觉得这太复杂了,并且寻找新的框架。
现在我正在使用laravel并且它非常好但我仍然无法弄清楚如何处理控制器和视图。这是我被困住的部分。
我通过创建一个file.php到root文件夹并创建一个.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'
));
在文档中,他们只为一个变量做了示例。我不知道如何继续我的方式。
答案 0 :(得分:3)
我假设您正在使用Laravel 3,因为这是目前的稳定版本。这里有a section in the Laravel docs。基本上你将以最适合你的应用程序的方式使用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/