最新消息:yaf表单扩展中新增加了浮点数、日期和集合的校验。php yaf框架扩展实践三——表单

php yaf框架扩展实践二——多模块

PHP 7550浏览 1评论

虽然多模块的配置可能会有一些争议,但是在项目前期能加快开发效率和部署效率,若项目发展起来有了更多的资源后可以考虑分拆模块。yaf也支持多模块的配置,先看下yaf如何配置多模块。

yaf配置多模块

假如我们要新增加一个api模块,用来提供给app调取使用;新增一个admin模块用来做后台管理。

配置文件中增加:

application.modules = Index,Api,Admin

applicaiton目录下新建modules目录,目录结构如下:

yaf多模块目录示例

yaf多模块目录示例

其中Admin、Api目录就和配置的模块名称一致,每个模块目录下都可以新建controllers和views目录用作控制器和视图,唯一遗憾的是模块下的models内的文件不支持自动载入,所以在该模块下的一些业务方法只能放在application/models目录下。

什么时候需要新建模块

一般来讲如果该模块具有统一的控制方法则可以考虑新建模块,如果上例api模块,用来提供给app调取使用,其中可以封装统一的数据输出方法。admin模块可以统一封装授权和校验登录。统一封装的方式参见library下的控制器父类:

yaf各模块父类

yaf各模块父类

小结

在项目初期通过多模块的使用,可以很好的重用代码,管理起来也方便很多。只是要考虑到未来模块拆分的可能性,尽量避免各模块之间耦合度太高,因为都在同一个项目里开发这样的问题有时很容易犯,需要特别注意。另外在部署的时候需要注意下权限访问问题,例如admin模块可以考虑限制ip访问、内部的接口模块只允许服务器内访问等。

转载请注明:快乐编程 » php yaf框架扩展实践二——多模块

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (1)

  1. 陈大哥,你写的这些,对于我来说,好像有些精简了,能不能以后再写的详细一点呀 :sad:
    小凡2年前 (2015-11-23)回复