php的控制器,php-模块与控制器

我正在为一个PHP框架(不是,另一个)编写点点滴滴,作为学习的经验,希望将来可用于较小的项目.

我已经读了很多书,即现有框架的参考文档.我看到模块一词泛滥成灾,根据我的阅读和以前的经验,模块是一个概念,用于划分相关代码(视图,控制器,模型等).

我很好奇,在这种情况下如何看待模块? (上下文是MVC Web应用程序体系结构或类似的应用程序开发模式)

我正在尝试确定如何最好地应用它,因为(我认为)它适合我当前的困境.对于音乐网站,模块将被视为艺术家,制作人等,而控制器将被视为个人资料,媒体等.这当然会留下诸如查看或编辑之类的动作.

这一切似乎都很好,因为现在我可以像这样进行路由了:

'Artist/Profile/View/{ALIAS}'

+- Module : Artist

+- Controller : Profile

+- Action : View

//this may be accessed via music.com/artist/{alias}

//defaulting the Controller and Action

..但是我试图弄清楚模块概念在这里如何适合,特别是我如何组织或修改控制器以适应.

这就是我正在考虑的文件系统布局.

+- Root

+- 'index.php'

+- 'api.php'

+- Modules

| +- Public

| | +- Controllers

| | +- Views

| |

| +- User

| | +- Controllers

| | +- Views

| |

| +- Artist

| | +- Controllers

| | +- Views

| |

| +- Producer

| | +- Controllers

| | +- Views

| |

| +- Venue

| | +- Controllers

| | +- Views

| |

| +- Administrator

| +- Controllers

| +- Views

|

+- Models

+- Config

+- ...

解决方法:

在大多数框架中,模块(在CakePHP中称为Plugins)几乎都是微型应用程序.它们内部有自己的MVC结构,通常是独立的,也许仅依靠主应用程序模型来保持代码可重用.

我们在工作的地方使用Zend,而模块的示例就是

>管理员模块,站点管理员可以对系统进行更改.

>网站一般前端的Web模块

>用于已登录用户的用户模块,这些用户具有其他管理工具来执行站点上的活动

基本上所有这些都属于同一个站点/系统,但是大多以不重叠的方式进行.

标签:module,model-view-controller,php,routing

来源: https://codeday.me/bug/20191208/2093145.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值