Вы можете сделать что-то вроде:
$params = Input::get();
$params['age'] = 'something'; # overwrite the age that was in the URL (if any)
$params = http_build_query($params);
$out .= '<a class="filter-link" href="'.[THE_PAGE_URL].'?'.$params">';
Обратите внимание, что [THE_PAGE_URL] должно быть в базовой форме без каких-либо параметров строки запроса в нем, как вы будете добавив их все снова, используя $ Params.
Редактировать в ответ на ваш комментарий:
Это позволяет добавление тех же Params к строке запроса каждый раз, когда ссылка нажата.
Произнесите пользователь прибывает в URL, как:
http://example.com/some/route?page=3&age=6&color=red
Если вы хотите ссылку, которая забывает все текущие параметры и определяет только возраст:
$out .= '<a class="filter-link" href="'.URL::to("some/route").'?age=5">';
выше следует приводят к: http://example.com/some/route?age=5
Или, если вы хотите ссылку, которая держит е текущий цвет фильтра (красный), но изменяет параметр возрастную и забывает параметр страницы целиком:
$params = Input::except('page'); # get all current parameters except page...
$params['age'] = '5'; # overwrite the age parameter that was in the URL (if any)
$params = http_build_query($params); # should return "color=red&age=5"
$out .= '<a class="filter-link" href="'.URL::to('some/route').'?'.$params">';
выше должно привести: http://example.com/some/route?color=red&age=5
Надежда, что помогает.
Как построен ваш сайт? Вы выбираете все эти фильтры на одной странице? Может быть, использовать флажки? – silkfire
Возможно [http_build_query] (http://php.net/manual/en/function.http-build-query.php) может помочь вам? – lukasgeiter
Спасибо, было бы лучше, чтобы связать каждый фильтр с одним и тем же контроллером, передав что-то вроде age = 3 и добавить его в переменную сеанса? – imperium2335