返回上一页 企业建设微商城有哪些优势 网站建设公司资讯 页面及产品设计用户体验的七个问题

当前位置:首页 > 观点资讯 > 网站建设 > 详细内容

PhalconCMS系统源码解析之多模块

时间:23-03-20 浏览:197次 + 打印

  这一篇小宇宙跟大家分享一下PhalconCMS多模块的代码组织。在PhalconCMS中有“前台(app/frontend目录)”和“后台(app/backend目录)”两个模块,分别对应着访客和管理员的用户群体。下面小宇宙程序开发团队直接通过代码来分析。

   多模块文件加载

  在“app/core/loader.php”文件中,对“前台模块”和“后台模块”的“controllers”、“models”文件目录进行加载。这里是用的命名空间加载(registerNamespaces)方式,也可以用自动加载(registerDirs)来处理。

  
   DI注册服务

   私有服务

  在“app/frontend/FrontendModule.php”和“app/Backend/BackendModule.php”文件中分别向DI注册前台和后台模块所需的"dispathcer调度器服务"、“url服务”以及“view模板服务”。这里需要注意的是,前后台的“dispatcher调度器服务”中设置的“默认调度器”是不一样的:

  
  同理,前后台的“url服务”中设置的"URL前缀"也是不一样的。这是为了在程序中调用生成URL的方法($url->get("test/test");)时,自动根据当前模块来设置URL的前缀:

  
   公用服务

  在“app/core/services.php”文件中向DI注册多模块共用的公用服务,如路由服务、数据库连接服务、缓存服务、日志服务等等。多模块的路由服务如下:

  
  "app/config/routes.php"中设置的路由规则如下:

  
   注册多模块

  以上步骤完成之后,后在"app/public/index.php"中注册多模块:


  至此,PhalconCMS的多模块就能正常运行了。在浏览器中访问带有“/admin/”前缀的URL,"dispatcher调度服务"就能将请求URL分发到后台的控制器中("app/backend/controllers"),其他的URL请求,就默认分发到前台控制器("app/frontend/controllers")。

  以上贴的都是代码片断,具体代码可以与小宇宙程序开发团队交流。

PhalconCMS系统源码解析之多模块

网站建设公司项目经理

扫二维码与项目经理沟通

我们在微信上24小时期待你的声音
解答:网站优化、网站建设、APP开发、小程序开发

如有侵权需要删除文章请联系我

小宇宙是一家以提供网站建设网站优化APP开发小程序开发、网络营销推广为主的互联网开发公司。以客户需求为导向,客户利益为出发点,结合自身设计及专业建站优势,为客户提供从基础建设到营销推广的一整套解决方案,探索并实现客户商业价值较大化,为所有谋求长远发展的企业贡献全部力量。

Learn more

关于我们 专业网站设计制作

Learn more

服务项目 南京网站建设
获取网站设计、app开发、VI设计报价 微信客服 返回顶部
网站制作
扫二维码与项目经理沟通
×

Let\'s get in touch!,login get more service.

我们将艺术与技术相结合,用创意和设计为客户创造商业价值,创造优秀的产品及服务体验!登陆之后可以获得更多的私人定制服务

sitemap.txt sitemap.xml sitemap.htm 网站设计制作