【发布时间】:2013-03-23 02:36:05
【问题描述】:
我有一个字符串,/controller/method/parameter1/parameter2?parameter1=parameter2。这只是我用于我的网站的REQUEST_URI。
我想使用 PHP 将该字符串拆分为单独的数组元素,以下代码可以很好地执行此操作:preg_split('[/]', $_SERVER['REQUEST_URI'], NULL, PREG_SPLIT_NO_EMPTY)。
这几乎完美无缺,为我提供了出色的数组输出,直到我添加了 get 变量。有了这些,最后一个数组元素也包含了 get 变量。
我的问题是,有没有办法在达到问号 (?) 时立即停止处理?
我想从问号中删除它,只显示问号之前的项目。这(希望)意味着:
Array
(
[0] => controller
[1] => method
[2] => parameter1
[3] => parameter2?parameter1=parameter2
)
会变成这样:
Array
(
[0] => controller
[1] => method
[2] => parameter1
[3] => parameter2
)
问题是,我希望这一切都在正则表达式中。我真的不在乎是否有其他方法(我知道有),我只想知道在正则表达式中是否有办法做到这一点。
谢谢
【问题讨论】:
标签: php regex url url-rewriting rewrite