【发布时间】:2017-01-24 10:40:39
【问题描述】:
所以我目前正在使用我的 .htaccess 来编写我的 URL,以使 URL 更加友好。 但是我无法获得可能是更多文件夹的第四个变量。我会在下面尽力解释。
所以目前我可以使用以下 URL:
www.mysite.co.uk/first/second/third
现在我使用重写规则:
RewriteRule ^e/([a-zA-Z0-9-/]*)/([a-zA-Z0-9-/]*)/([a-zA-Z0-9\-\/]*)$ index.php?var_1=$1&var_2=$2&var_3=$3 [L]
当我发生以下其中一种情况时,我的问题就出现了:
www.mysite.co.uk/first/second/third/fourth
www.mysite.co.uk/first/second/third/fourth/fifth
www.mysite.co.uk/first/second/third/fourth/fifth/sixth
从上面我想要返回以下变量:
$_GET['var_1'] = 第一
$_GET['var_2'] = 秒
$_GET['var_3'] = 第三/第四
或
$_GET['var_3'] = 第三/第四/第五
或
$_GET['var_3'] = 第三/第四/第五/第六
所以基本上我总是设置“var_1”和“var_2”,但第三个变量可以是 URL 的其余部分。
我希望这是有道理的,并且是可能的。
【问题讨论】:
-
您可以通过 php 执行此操作,解析 url:示例:[php.net/manual/en/function.parse-url.php]
-
嗨@DenisSolakovic 感谢您的意见。这样做可以工作,但当以原始格式发送变量时效果更好(?var_one = first)。除非我错过了什么。
-
嗯,你可以用 .htaccess [stackoverflow.com/questions/7827779/… 来做到这一点,但我的另一个建议是用分隔符 / 分解 url 参数并获取你的 url 片段......
标签: php apache .htaccess url mod-rewrite