-2

我正在使用 Cake,但是如何使路由如下:

Router::connect('/', array('controller' => 'homes', 'action' => 'index'));

不区分大小写?

例如:

Router::connect
(
    '/:user', 
    array('controller' => 'teachers', 'action' => 'contentProfile', 1),
    array('user' => 'hellouser')
);

MY_URL.com/hellouser 工作正常,但 MY_URL.com/HelloUser 没有正确路由。

我已经尝试过 /heelouser/i ,但仍然没有。

4

1 回答 1

4

文档中所示,您可以使用正则表达式来限制匹配的路由元素。您正在寻找的正则表达式片段是:

'(?i:hellouser)' 

路线定义

将文档和您的特定正则表达式放在一起,这是一条/hellouser以不区分大小写的方式匹配 url 的路由:

Router::connect(
    '/:user', 
    array('controller' => 'teachers', 'action' => 'contentProfile', 1),
    array('user' => '(?i:hellouser)')
);

第三个参数用于限制路由元素的可能值——在这种情况下以不区分大小写的方式为“hellouser”。

于 2012-09-21T08:21:40.507 回答