如何通过.htaccess忽略url中的撇号

时间:2014-09-25 14:43:22

标签: php regex apache .htaccess mod-rewrite

我在.htaccess中使用以下规则

RewriteRule ^([\w-]*)/(.*)/t/(([\d]|[\-])+)$ pronew/ci/touch.php/touch/TouchSearchController?fl-brand=$2&category=$3 [L,QSA]

所以,当我访问http://local.xyz.com/personal-care-men的s-cosmetics / t / 12345网址时,它会给我。

Array
(
    [fl-brand] => ci/index.php/personal-care-men's-toiletries
    [category] => 12345
)

在$ _GET但是如果我从网址中删除单引号我在$ _GET中没有得到fl-brand param这是正确的行为。

如何忽略网址中的单引号,以便我只获得

Array
(
    [category] => 12345
)

1 个答案:

答案 0 :(得分:0)

你可以在第一部分使用这个基于否定的正则表达式,并使用\d+作为最后一部分:

RewriteRule ^([^/]+)/t/([0-9]+)/?$ pronew/ci/touch.php/touch/TouchSearchController?fl-brand=$1&category=$2 [L,QSA]