如何使用mod_rewrite将URL重写为PHP数组?

时间:2019-03-09 13:08:59

标签: php apache .htaccess mod-rewrite

我不知道如何通过以下形式重写URL(使用mod_rewrite)

https://example.com/foo/bar/123/asd/qwerty

更改为以下格式

https://example.com/index.php?controller=foo&action=bar&params[]=123&params[]=asd&params[]=qwerty

将始终提供控制器和操作,但是之后的参数数量可能会有所不同。我目前正在将整个123 / asd / qwerty作为字符串传递给PHP中的$ _GET ['params'],但我现在想将此字符串转换为一个已经拆分的数组。

我使用什么RewriteRule?

1 个答案:

答案 0 :(得分:0)

我不确定您需要的是重写规则。 当应用时,mod_rewrite在做什么是从
开始的 A: https://example.com/foo/bar/123/asd/qwerty B: https://example.com/index.php?controller=foo&action=bar&params[]=123&params[]=asd&params[]=qwerty

BUT:在上述情况下, B 是原始URL, A 是重写的URL ...更加用户友好。由于您没有在URL中传递变量,因此无法从中“获取”它。我认为唯一的方法是使用php来获取网址并将其拆分成部分