我需要无限期地继续这个,而不是每次都写出来。 有没有办法实现这个目标?
RewriteRule ^(\w+)/?$ index.php?page=$1 [QSA]
RewriteRule ^(\w+)/(\w+)/?$ index.php?page=$1&$1=$2 [QSA,L]
RewriteRule ^(\w+)/(\w+)/(\w+)/?$ index.php?page=$1&$1=$2&$2=$3 [QSA,L]
所以一直通过$ 1 = $ 2然后$ 2 = $ 3所以page = blog& blog = article& article = date& date = 2012
我的PHP接下来并对此进行分析。所以可以像$ 1 - > $ 11长网址我知道这意味着我仍然可以启用添加。
AAA.com/blog/article/date/2012/?colour=blue
答案 0 :(得分:0)
不是这样的。要获得替换$5
占位符,您需要一个匹配组。
当然,人们可以按小组进行选择:
RewriteRule ^(\w+)(?:/(\w+))?(?:/(\w+))?(?:/(\w+))?(?:/(\w+))?(?:/(\w+))?(?:/(\w+))?/?$ index.php?page=$1&$1=$2&$2=$3&$3=$4&$4=$5&$5=$6 [QSA,L]
但是你有一些&=&=&=
跟踪缺席的条目。通常它应该导致空$_GET[""]
,但PHP甚至忽略了这一点。所以,可能是一个选择。我觉得它不是一个更可读或更简洁的RewriteRule。