mod_rewrite - htaccess - 多个参数

时间:2015-09-23 11:04:00

标签: php regex .htaccess mod-rewrite

我有这样的网址:

  

https://example.com/folder/j/i?param1=123&param2=456

我有一个物理文件夹[NSLocale currentLocale]folder之后的所有内容应该是GET-Parameters,所以我在PHP中得到这个:

folder

此刻我尝试了类似的事情:

<?php
$mode = $_GET["mode"]; // j
$type = $_GET["type"]; // i
$param1 = $_GET["param1"] // 123
$param2 = $_GET["param2"] // 456

我不知道,如何调用多个参数?

谢谢!

2 个答案:

答案 0 :(得分:1)

/folder/.htaccess内,您可以拥有以下规则:

RewriteEngine On
RewriteBase /folder/

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)/?$ index.php?mode=$1&type=$2 [L,QSA]

这会将https://example.com/folder/j/i?param1=123&param2=456路由到https://example.com/folder/index.php?mode=j&type=i&param1=123&param2=456

答案 1 :(得分:0)

更好的方法是使用PHP explode GET参数使用&#34; /&#34;作为分隔符。