gpt4 book ai didi

php - 如何为不同的 "mobile device interfaces"和 "desktop interfaces"组织代码

转载 作者:可可西里 更新时间:2023-11-01 00:38:25 27 4
gpt4 key购买 nike

我正在计划一个网络应用程序。我在 Smarty 中使用 PHP 框架 Kohana。我的 Web 应用程序还将具有移动设备界面。现在,这两个接口(interface)将有很多共同的代码和很多单独的代码。

我应该如何组织代码以便:

  1. 没有重复代码。
  2. 不会加载不必要的代码。例如,桌面 UI 特定代码不应加载到 iPhone 界面中,反之亦然。

最佳答案

您真的有多种选择!

您可以选择使用共享的 Kohana 模块走“2 个项目”路线 - 但我个人不喜欢这种方法。

我个人会使用类似的方法作为多语言站点 - 所以... apache(或其他)将重写 m.example.tld/my/page -> www.example.tld/mobile/my/page

假设您使用 Kohana3 - 标准路线可以更改为:

Route::set('messages', '<format>/(<controller>(/<action>(/<id>)', array('format' => '(mobile|desktop))->defaults(array( 'format'     => 'desktop', 'controller' => 'welcome', 'action'     => 'index',));

因此 - 用户永远不会看到/mobile/URL,但您现在可以根据 Request::instance()->param('format'); 选择哪个 smarty 模板

可能 - 您只需要为每个平台复制 View 文件/智能模板。

我对输出格式使用类似的模式...XML、JSON、XHTML、RSS ..

希望这有帮助;)

关于php - 如何为不同的 "mobile device interfaces"和 "desktop interfaces"组织代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2311350/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com