Php替换为字符串

时间:2013-06-30 18:30:42

标签: php regex

我有基于当前网址的字符串,如下所示:

domain.com/katalog_firm,p11.html?typ=lista&fraza=&search_group=1&search_type=1&kategoria=1&podkategoria=0&wojewodztwo=0&miejscowosc=0&page=1&limit=10

我想做一个分页。如何替换此strng page = x,并从下拉列表中选择limit,因此limit = x 所以我想从上面改为

domain.com/katalog_firm,p11.html?typ=lista&fraza=&search_group=1&search_type=1&kategoria=1&podkategoria=0&wojewodztwo=0&miejscowosc=0&page=2&limit=25

我只想从(页面和限制)

进行替换
domain.com/katalog_firm,p11.html?typ=lista&fraza=&search_group=1&search_type=1&kategoria=1&podkategoria=0&wojewodztwo=0&miejscowosc=0&page=1&limit=10

domain.com/katalog_firm,p11.html?typ=lista&fraza=&search_group=1&search_type=1&kategoria=1&podkategoria=0&wojewodztwo=0&miejscowosc=0&page=2&limit=25

其中page将从循环变量,而limit将是常量

1 个答案:

答案 0 :(得分:0)

您可以将字符串分解为数组,然后修改所需的值并再次创建字符串。

<?php
    $url = "domain.com/katalog_firm,p11.html?typ=lista&fraza=&search_group=1&search_type=1&kategoria=1&podkategoria=0&wojewodztwo=0&miejscowosc=0&page=1&limit=10";
    $params = explode("?",$url,2);
    parse_str($params[1], $url_array);
    $url_array['page'] = 2;
    $url_array['limit'] = 5;
    $newparams = http_build_query($url_array);
    $newurl = $params[0]."?".$newparams;
 ?>