介绍:http_build_query()函数是一个将数组变量转换为 URL-encode 之后的字符串的 PHP 内置函数。当我们需要将数组数据拼接在 URL 之后进行传递时,使用该函数可以将数组快速转换成 URL 字符串。
使用方法:
http_build_query($query_params, null, '&');
参数:
$query_params:需要编码的参数,可以是一个关联数组或者索引数组。(必填)
$num_prefix:参数名是否需要添加枚举序号。默认为"null",序号从 0 开始,如果传递了数字参数,则序号从数字参数的值开始。可以添加自己的前缀,传递一个字符串即可。(可选)
$arg_sep:参数之间使用的分隔符,默认为"&",也可以使用"|",";" 甚至是空字符串 ""。(可选)
示例1:
// 关联数组
$query_params = array('id' => 1, 'name' => 'Tom', 'age' => 20);
$query_string = http_build_query($query_params);
// 输出结果: id=1&name=Tom&age=20
echo $query_string;
示例2:
// 索引数组
$query_params = array('Tom', 20, 'male');
$query_string = http_build_query($query_params, null, '-');
// 输出结果: 0=Tom-1=20-2=male
echo $query_string;
在应用场景中,我们经常需要构造一些 URL 参数,处理 GET 方式的请求时。使用 http_build_query() 函数可以更加方便快捷地转换数组参数为 URL-encode 之后的字符串形式,以此拼接到 URL 中,满足需求的传递参数格式。
备注:需要搭配urldecode()函数在接收到前端传递的值时进行解码,否则会出现乱码情况。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PHP使用http_build_query()构造URL字符串的方法 - Python技术站