我最近使用此tiny mvc boilerplate实现了以下MVC代码。 我不想使用Zend或Symfony,因为我只需要一个小结构,但我真的需要稍微花一点时间。
我是PHP的新手,所以想知道是否有人使用过这个或知道我如何添加另一个View。我有链接版本工作,我用来加载我的布局,但想在此布局中添加一个内容部分,可以调用其他页面。
任何帮助都会很棒!
答案 0 :(得分:0)
下面的神......视频太可怕了。
在那个现有的例子中,如果你想添加另一个“视图”(实际上不是什么视图),你需要在控制器中使用另一种方法:
class Controller
{
// -- snip --
// you need to change the constructor too
public function __construct()
{
$this->load = new Load;
$this->model = new Model;
}
// -- snip --
public function gallery()
{
$list = $this->model->get_urls();
if ( count($list) > 0 )
{
$this->load->view('gallery.php' , $list);
}
else
{
$this->load->view('error.php', array(
'source' => 'gallery',
'reason' => 'empty'
));
}
}
// -- snip --
}
您还需要更改 tinyMvc.php 文件:
$c = new Controller;
$action = 'home';
if ( isset( $_GET['page']))
{
$action = $_GET['page'];
}
if ( method_exists( $c, $action) )
{
$c->{$action}();
}
else
{
echo 'no such action !';
}
反正。整个“教程”使用MVC的术语,这并不是真正意义上的。他的“观点”实际上只是一个简单的模板。这对于初学者来说学习怎么做并不完全是一件事,但他的实现也很糟糕。如果你想学习如何制作简单的原生php模板,你可能会发现this article非常有用。