我开始关注面向对象的PHP。到目前为止,我已经用程序方法开发了大量的PHP系统,但我认为是时候向前推进了。
我目前正在开展的一个项目是WordPress的成绩和差点计算插件。简而言之,该插件从上传的CSV文件中获取乒乓球运动员的结果,并制作残疾人锦标赛的评分。
我正在使用WordPress,因为我的乒乓球俱乐部的网站使用WP,如果它适用于他们我可以将它提供给其他俱乐部/联盟,他们也可以安装插件并获得完全成熟的等级和差点系统。
在WordPress之外,我合理地确信我可以使用MVC模式在OO-PHP中开发这样的系统。它可能看起来像这样:
控制器
模型
查看
如果我错了,请纠正我,因为我在过去30分钟左右才学会这种模式,但我的逻辑是创建这个系统的真正MVC方法。
然而,一旦我将WordPress插件引入等式,我就开始讨论以下问题了:
include
。但是,在WordPress中,它不能像那样工作 - 我不能以这种方式使用CSS样式,它们必须是enqueue
'd。我将在哪里托管我的CSS文件入队函数?hook
,即register_activation_hook
。我将在哪里举办这些活动?把它们放在控制器中似乎是明智的,但与此同时我想象控制器可能需要保持尽可能干净和简单。add_menu_page
和add_submenu_page
命令创建WordPress管理页面。我在哪里举办这些活动?所有这些问题可能都有相同的答案,我知道这只是语义,但我很想尽早尝试这一点,所以我可以真正了解面向对象PHP的MVC模式。< / p>
提前致谢,
答案 0 :(得分:1)
如果您正在寻找更好的学习MVC的地方,this would be it.
答案 1 :(得分:0)
希望我能做到这一点。
无法告诉你CSS,因为我只保留在我的布局文件(视图)中定义的那些。
重逻辑可以放入服务(外部类),然后在控制器中运行。你会让你的控制器“瘦”
与前一个相似。您可以将您的菜单存储为模型(不必严格与数据库相关,也可以存储XML / JSON /数组数据),然后在控制器中调用您的添加/删除操作。