我应该在哪里使用MVC方法处理变量?

时间:2013-11-05 11:41:51

标签: php templates

F.e。我得到一个变量,MVC应用程序必须根据变量显示略有不同的JS。我应该在哪里将此变量处理到View或Controller中? MVC方法论说什么?

$ max_orders_count可能是> 0或= 0如果它的无限。

第一种方式

Controller:

if ($max_orders_count === 0) {
$this->view('view1.php');
} elseif ($max_orders_count > 0) {
$this->view('view2.php');
}

第二种方式

Controller:

$this->view('view.php', array('max_orders_count' => $max_orders_count));

View:

<?if ($max_orders_count === 0) {?>
     <script>JS1</script>
<?}?>

<?if ($max_orders_count > 0) {?>
     <script>JS2</script>
<?}?>

1 个答案:

答案 0 :(得分:0)

CodeIgniter使用可选模型的典型Web模式,以及包含代码的HTML模板(PHP页面,因为它是PHP)以及在模板和模型之间进行对话的类。

CodeIgniter将PHP文件称为“视图”(某些框架,特别是在PHP之外,称之为模板),它将中间类称为“控制器”(某些框架称之为“视图”)。

这意味着CodeIgniter模式调用MVC与传统的MVC框架关系不大,传统的MVC框架是事件驱动的,主要用于GUI应用程序。

这也意味着您的问题的答案是:您可以随时随地处理变量!

通常不赞成在模板中使用代码。任何复杂的代码都应该在w控制器中。但这只是进行条件检查,可以进入模板。