在PHP中构建查询字符串

时间:2011-10-09 06:43:08

标签: php

我想知道是否有技术或功能可以做到这一点,或者我是否只需要在这里拥有大量的IF语句/数组 -

我有一个名为products.php的页面和我在查询字符串中添加的一些不同的过滤器。 所有过滤器(如果选择)可能如下所示:

products.php?cat=chairs&type=pine&search=Vienna+Range

是否有一种简单的方法可以构建查询以便再次使用?

我将有按钮/搜索框来更改我正在使用的过滤器,因此我是否必须为每个过滤器构建URL并再次查询?

例如,我想:

<a href="products.php?cat=tables">Tables</a>
<a href="products.php?cat=beds">Beds</a>
<a href="products.php?cat=chairs">Chairs</a>

还要构建查询,以便记住我的搜索字词,木材类型和范围;所以点击“表格”会带我去

products.php?cat=chairs&type=pine&search=Vienna+Range.

1 个答案:

答案 0 :(得分:3)

你可以这样写:

<?php
$params = array(
    'cat'    => 'chair',
    'type'   => 'pine',
    'search' => 'Vienna Range',
);

print_r(http_build_query($params) . PHP_EOL);

你会得到这个:

cat=chair&type=pine&search=Vienna+Range