【发布时间】:2010-01-15 22:18:34
【问题描述】:
首先,让我这样说:我很讨厌正则表达式和 htaccess。我正在尝试制定一个规则,将 url 段正确解析为变量。到目前为止,我有这个:
RewriteRule ^([^/]+)/?$ index.php?query[]=$1 [QSA,L]
RewriteRule ^([^/]+)/([^/]+)/?$ index.php?query[]=$1&query[]=$2 [QSA,L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ index.php?query[]=$1&query[]=$2&query[]=$3 [QSA,L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)/?$ index.php?query[]=$1&query[]=$2&query[]=$3&query[]=$4 [QSA,L]
它确实有效,但我觉得它比它需要的更长;如果我想要 5 个或 6 个或 7 个变量怎么办?有没有更简洁的写法?
另外,当我吐出查询数组时,第一个元素始终是 index.php。这是怎么回事?
【问题讨论】: