如何在PHP中从头开始实现MVC?[已关闭]

2022-08-30 20:50:39

我想在PHP中从头开始实现MVC,因为我希望完全控制自己的代码,并且没有来自现有框架的额外包。有人有任何建议吗?


是的,我看过Lerdorfs的文章,似乎它毕竟没有那么多代码。实际上,我更希望有一个控制器视图解决方案来构建我的应用程序。我将坚持使用我自己的自制 PDO 数据访问类。


答案 1

你的问题闻起来有点像不是发明的这里综合症。在这种情况下,我的建议是,当你可以确保它们得到彻底的测试和支持时,就要忍受现有框架的额外包袱。不要重新发明轮子

另一方面,上述论证将阻止编写新的框架。从头开始编写一个是学习和理解MVC模式的良好编码练习。

因此,如果您真的决心这样做,我的建议是了解MVC的每个部分是什么,做什么以及它们如何相互作用。您也不可避免地会遇到FrontController模式,因此您也希望了解此模式。

请注意,您不是唯一想要这样做的人:

还有一篇由拉斯穆斯·勒多夫(Rasmus Lerdorf)撰写的有趣文章。


答案 2

MVC的简单示例实现(只是为了理解原理)

型号:自由/物.class.php

class Thing
{
//class code ( CRUD, the application logic ...)
}

查看:主题/page_thing.php

<?php require("header.php");?>
//HTML CODE with some echo to show variables and loops to read arrays
<?php require("footer.php");?>

控制器:应用程序/事物.php

require_once("lib/Thing.class.php");
/*
Some controls between the Model and the View ( if/else ...)
*/
include("theme/page_thing.php");

推荐