2011-05-09 37 views
2

说我有这样的:正则表达式匹配,然后替换?

&page=4 

我想取代这一点,让它空白,所以它不存在。

但是,页码可以是任何东西,66,98,17,2,109,等

目前,我有沿着线的东西:

$currentpage = str_replace("&page=", "", $currentpage); 

但我需要它也删除号码,我该怎么做?

谢谢。

回答

4
$currentpage = preg_replace("/&page=\d+/", "", $currentpage); 

但如果你创建这个你自己,你应该做的......

$get = $_GET; 

unset($get['page']); 

echo http_build_query($get); 

这将输出所有的GET PARAMS很好的序列化的字符串。当你解除page成员时,它显然不会出现:)

+0

这很好用,如果&排序=最低(删除这整个东西),我该怎么做呢 - 因为你只发布一个似乎只适用于数字字符。我只是使用w +而不是d +? – Latox 2011-05-09 04:42:41

+0

@Kyle你可以把它改成'&sort = [^&$]'。 – alex 2011-05-09 04:49:03

+0

对于http_build_query +1,我不知道 – andrewtweber 2011-05-09 05:26:57