【发布时间】:2012-12-03 16:05:36
【问题描述】:
我有这个 .htaccess 代码:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^([\w-]+)/*$ ./index.php?page=$1
这允许在正斜杠之后附加一个参数,并在 PHP 中用作$_GET,如下所示:
网址:
http://www.url.com/home
PHP:
<?php
echo $_GET['home'];
?>
我的问题是,如何获取每个正斜杠并将该值作为新的 $_GET 传递给 PHP 使用?我假设问题将使用正则表达式解决方案,但由于我不了解正则表达式,我无法弄清楚。
只是举例说明,我想要这个:
http://www.url.com/param1/param2/param3
翻译成:
$_GET['param1'];
$_GET['param2'];
$_GET['param3'];
等等等等
【问题讨论】:
-
将它作为一个简单的单个字符串传递,然后在 PHP 中
explode()它。这样比尝试提出一个可以处理任意数量参数的 mod_rewrite 容易得多。 -
感谢您的建议。如果我想要一组可以更改的参数会有所帮助吗?例如:
http://www.url.com/category-name/post-alias,当然翻译为类别名称和帖子 ID 或别名。
标签: php apache .htaccess url-rewriting