在codeigniter路由中使用通配符?

Posted

技术标签:

【中文标题】在codeigniter路由中使用通配符?【英文标题】:wildcards to use in codeigniter routing? 【发布时间】:2011-02-06 10:52:05 【问题描述】:

在 codeigniter 中,您可以使用通配符重新路由。

我以前从未听说过通配符这个词。

这是一组可以像正则表达式一样使用的规则吗?

因为在 codeigniter 文档中他们只是给出了一些例子,例如。

$route['product/(:num)'] = "catalog/product_lookup_by_id/$1";

是否有包含所有可用通配符表达式的列表/参考?

【问题讨论】:

【参考方案1】:

您可以匹配文字值,也可以使用两种通配符类型:

:数字 :任何

:num 将匹配仅包含数字的段。:any 将匹配包含任何字符的段。

或者您可以使用您的自定义正则表达式,例如:

$route['products/([a-z]+)/(\d+)'] = "$1/id_$2";

【讨论】:

所以我的问题的答案是只有两个通配符表达式::num 和 :any? @asjsie:是的,你没看错。另一个选项是您自己的自定义正则表达式。

以上是关于在codeigniter路由中使用通配符?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Angular 4 中使用路由器 url 通配符?

如何在命名路由有通配符的情况下使用命名路由

Laravel 3.x 路由问题 - 使用通配符获取错误的参数值

在 laravel 5 中通配符到错误控制器的路由

Vue路由器 - 捕获所有通配符不起作用

使用通配符的 Undertow 路由格式