我的项目中有一个表,其中包含类别(无限级系统)。这些类别可以是用户想要的任何类别,并将链接保存在数据库中。
现在我必须组装一个mod_rewrite系统,该系统会自动转换这些动态链接,但是我遇到了一些麻烦。
例如,一个“静态”页面,我有以下代码:
RewriteRule ^profile/?$ index.php?id=profile [L]
现在,在我的类别系统中,大多数情况下它将输出如下内容(3个级别,但可能是4、10、2):
site.com/cat1/cat2/cat3
因此,基本上,cat1
包含表信息,我应该在其中进行查询以从最后一只猫(在这种情况下为cat3
)中获取信息
我尝试了很多方法都没有成功。我获得成功的唯一方法是将cat1
更改为类别的真实名称,但是由于它是动态的,因此不可行。
RewriteRule ^cars/(.*)$ index.php?id=list-cars&pid=$1 [L]
那么,如何在不使用mod_rewrite破坏“静态”页面的情况下实现这一目标?
编辑: 如果我使用类似的东西:
RewriteRule ^(.*)/(.*)$ index.php?id=list-cars&pid=$X [L]
我可以用$ 1获得字符串的第一部分,或者用$ 2获得字符串的最后部分。我如何发送所有这些?
例如,如果“我的类别”是:/cars/opel/corsa
使用上述代码,$1
将返回cars/opel
,而$2
将返回corsa
所以我想我越来越近了(或没有),但不知道如何发送所有信息。