【问题标题】:how to route uri with dash in codeigniter如何在codeigniter中使用破折号路由uri
【发布时间】:2016-10-04 01:43:06
【问题描述】:

我正在尝试在 codeigniter 中控制我的路由。

我的网址是:www.domain.com/all-artists。如果我要接受dash控制器,我需要在下面配置route.php:

 <?php $route['all-artists']  =  "all_artists";

上述路由有效。现在,我想访问这个网址:www.domain.com/all-artists/x

上面 uri 中的“x”方法是动态的,这意味着我可以从 a-z 更改它。但是,此 url 返回错误显示。

你知道如何路由这些可以接受甚至带有虚线的段(1)并包含动态方法的网址吗?

【问题讨论】:

  • 阅读路由文档通配符部分
  • 我使用路由已有多少年了,但这对我来说似乎是新的……为什么要投反对票?
  • 因为答案在 CI 手册中...在路由下...真的不难找到或查找
  • 如果手册中有答案,我问你这个问题。如果手册中有答案,你知道吗?
  • 这真的与我所知道的无关......在这里问不应该是你研究工作的第一线......你看过吗?当方法没有按预期工作时,大多数人会从那里开始。并且文档易于浏览

标签: php codeigniter


【解决方案1】:

我得到了这个路由:

 <?php //route.php
 $route['all-artists']          =  "all_artists";
 $route['all-artists/(:any)']  =  "all_artists/function_name/$1";
 ?>

此路由将接受 www.domain.com/all-artistswww.domain.com/all-artists/x

【讨论】:

    【解决方案2】:
    RewriteRule ^([^_]*)_([^_]*_.*) $1-$2 [N]
    RewriteRule ^([^_]*)_([^_]*)$ /$1-$2 [L,R=301]
    

    使用上面的 htaccess 规则,您可以用破折号替换下划线。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-11-29
      • 1970-01-01
      • 1970-01-01
      • 2011-02-21
      • 2012-12-14
      • 1970-01-01
      • 2014-12-20
      相关资源
      最近更新 更多