【问题标题】:Codeigniter - Dynamic Routing from HookCodeigniter - 来自 Hook 的动态路由
【发布时间】:2011-03-20 21:15:03
【问题描述】:

我正在从钩子动态生成顶级导航,并且我想根据数据库中的“永久链接”列动态添加路由。

是否有从钩子动态添加到 $route 变量的方法?

谢谢。

【问题讨论】:

    标签: php codeigniter routing hook


    【解决方案1】:

    如果你有这样的 URL 结构,

    site.com/controller/navigation_link_item

    其中 navigation_link_item 来自数据库,然后在控制器中您可以访问 URL 的第二部分,如下所示:

    $this->uri->segment(2);
    

    然后您可以使用它来查找数据库。

    根据情况和您设置 .htaccess 的方式,可能需要将辅助页面路由到主控制器。在 routes.php 中你需要添加类似这样的一行:

    $route['controller/:any'] = 'controller';
    

    这会将所有以 controller/ 开头的 URL 路由到您的控制器,以便您可以查看它是否与数据库中的页面匹配。如果传入的 URI 段没有条目,则可以给出 404 错误:

    show_404();
    

    【讨论】:

      【解决方案2】:

      默认路由是

      $this->uri->segment(3);
      

      但您可以根据自己的要求进行设置。并取决于网址

      喜欢

      test.com/youtcontroller/aboutfunction

       $this->uri->segment(2);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-04-20
        • 2011-11-28
        • 1970-01-01
        相关资源
        最近更新 更多