如何以PHP MVC模式将View连接到Controller?

问题描述

| 我正在使用没有任何框架的PHP MVC模式,现在我有一个视图文件,其中有一些数据要插入其中,然后将其保存到数据库中。现在我的问题是如何将视图文件连接到控制器或模型。     

解决方法

视图不应将任何内容保存到数据库,这是模型的工作。该视图仅用于渲染。通常,您将在控制器中实例化一个视图对象,将要渲染的数据传递给该对象,然后调用某些渲染方法。也许是这样的:
$view = new View();
$view->setTemplate(\'/path/to/file\');
$view->setValues(array(
  \'key1\' => \'value1\',\'key2\' => \'value2\',));
$view->render();
如果要将数据保存在数据库中,则与视图无关。您可能会有这样的事情:
$model = new Model();
$model->setValues(array(
  \'key1\' => \'value1\',));
$model->save();
$view = new View();
$view->setTemplate(\'path/to/file\');
$view->setValues($model->getValues());
$view->render();
    ,控制器可以包括视图和模型文件。 当控制器由url调用时,使用模型方法获取或放置内容(在db中),另一个使用模型方法将数据发送到视图,并为浏览器输出视图。     ,控制器从视图中获取数据,并将其传递到模型中。该模型处理持久性。同样在HTTP世界中,我会说控制器从请求中获取数据,而不是直接从视图中获取数据,但这只是实现细节。 您只想确保模型不以任何方式依赖于视图。这是MVC中的主要规则之一。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...