我想知道該視圖如何與模型進行通信。視圖如何與模型進行通信?
據我所知,控制器將正確的信息引導到模型。
class Controller
{
public function action()
{
if(isset($_POST))
{
$this->model->someMethod($_POST['foo'],$_POST['bar']);
}
}
}
該模型確實是業務。
class Model
{
public function someMethod($foo,$bar)
{
// do something
}
}
視圖以某種方式知道如何與模型通信,以獲取它的當前狀態。但是它是如何完成的?
class View
{
public function action()
{
// ask the model what is going on
}
}
怎樣的看法知道發生了什麼,如果一切順利的正確方法。我雖然在模型上用'getState()'方法獲得模型的某些狀態。狀態是一些字符串視圖知道該怎麼辦但它似乎並不正確的方式給我。例如,視圖如何知道是否有人登錄?觀點是否應該真正瞭解這一點?
我有一種感覺,這取決於你正在使用的MVC框架/架構? PHP本身不這樣做 – Luke
沒有框架,不知道這是如何完成的。 – John
PHP本身並不這樣做我相信,如果我錯了,請糾正我。您可以使任何類與PHP互相交互,我想可以通過許多不同的方式實現。如果你想在PHP中使用MVC,你將不得不採用像CodeIgnitor,CakePHP等現有框架[見這裏](http://jonathanmh.com/best-php-mvc-frameworks-of-2013/) – Luke