将YII框架(php)用于移动Web应用程序和Web应用程序

时间:2012-03-10 16:52:28

标签: php yii

我目前正在制定一个客户端提案,该提案适用于网络和移动网络应用程序。 Web应用程序有61个功能,Mobile Web应用程序应该包含所有功能的子集。

我们评估了各种编程语言堆栈,并确定LAMP是最好的。我们甚至更进一步,用PHP评估了各种MVC框架并最终确定了YII。

现在我的问题是这个。我们将为移动和Web应用程序使用相同的代码库。我们计划通过“前端控制器”目标控制器路由所有请求,该控制器检查“用户代理”标头并将所有应用程序控制器放在交换机块中。因此,对于Web和移动应用程序,“模型”和“控制器”代码保持不变,只有“视图”更改。根据“用户代理”,目标控制器决定加载适当的“视图”。这个架构对你们有什么影响?有没有人有更好的主意?这个架构在YII中是否可以实现功能?请指导我一下。

2 个答案:

答案 0 :(得分:3)

听起来像是一个很好的常见解决方案。这是一篇关于如何根据浏览器类型切换主题的博客文章:

http://learnyii.blogspot.com/2011/03/yii-theme-iphone-android-blackberry.html

答案 1 :(得分:3)

  

我们计划通过“Front-Controller”目标控制器路由所有请求,该控制器检查“User-Agent”标头并将所有应用程序控制器放在交换机块中

请考虑使用过滤器,而不是这样做: http://www.yiiframework.com/doc/guide/1.1/en/basics.controller#filter

它们更强大,可以消除像开关块这样的东西,同时仍然可以完全控制加载的主题等等。