首页 / PHP / PHP-如何将子域合并到MVC框架中
PHP-如何将子域合并到MVC框架中
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP-如何将子域合并到MVC框架中,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1602字,纯文字阅读大概需要3分钟。
内容图文
![PHP-如何将子域合并到MVC框架中](/upload/InfoBanner/zyjiaocheng/651/1739857f567c4012ad5f25b1099c28d4.jpg)
随着时间的流逝,我开发了自己的框架,并且运行良好-它的重量轻,速度快,并且经过实践证明可以处理不错的负载.
现在,我正在从事一个可以描述为在线商店的项目,每个用户都将拥有其子域,可以在其中出售其商品.
我的框架通过用/分割请求网址并确定什么是
控制器,动作参数等.
效果很好,但是如何处理子域?
我已经修改了我的reqest对象,所以当我输入时说:
(我添加了SeverAlias * .shop.local)
这是我的请求对象的样子:
DPLS_Request Object
(
[_request] => Array
(
[0] =>
[1] =>
[action] => defaultAction
[controller] => home
)
[_params] => Array
(
)
[_rurl:private] => kodi.shop.local
[_segment] => kodi
[get_params] => Array
(
)
)
所以_segment是子域,以后我可以在代码中使用它来验证它与用户名和其他内容的比较,但是在此之前我遇到了概念上的问题.
我的问题是我的框架希望传递一些控制器和操作,并且由于他在URL末尾得到的所有内容都是/他假定它应该显示索引页:(
那么下一步该怎么做…如何在整个MVC控制器/动作故事中合并子域?
一种快速而肮脏的解决方案是修改我的请求类的一部分:
if($this->_request['controller']==''){
$this->_request['controller'] = DEFAULT_CONTROLLER;
}
if($this->_request['action']==''){
$this->_request['action'] = DEFAULT_ACTION;
}
并将其包装在另一个包中,以测试是否存在_segment,然后将其分配给控制器DEFAULT _SHOP _CONTROLLER,我将在配置文件中将其定义为“ store”
因此上面的请求将类似于键入http://shop.local/store/
(它将运行“存储”控制器和默认操作)
在这种情况下您会怎么做?
处理子域,控制器和操作时是否有“最佳实践”?
解决方法:
在我看来,您所描述的方法听起来是实现所添加功能的合理下一步.新功能将带来一些额外的复杂性,但是您的请求对象/路由器应该很好地封装以下逻辑:“提供段时,我调用哪个控制器?提供段和控制器时,我调用哪个控制器?”等.我说去.
内容总结
以上是互联网集市为您收集整理的PHP-如何将子域合并到MVC框架中全部内容,希望文章能够帮你解决PHP-如何将子域合并到MVC框架中所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。