巧用PHP函数http_build_query()

  • 目录
  • 1. 前言
  • 2. 参数分析
  • 3. 总结

1.前言

http_build_query()是PHP中一个比较有趣的URL函数,它能够帮助我们轻易地的封装成URL格式,从而避免因为遗漏和格式错误导致的报错。

手册:https://www.php.net/manual/zh/function.http-build-query.php

2.参数分析

http_build_query ( mixed $query_data , string $numeric_prefix , string $arg_separato)函数比较值得关注的是前三个参数,下面让我们一起了解他吧~

第一个参数$query_data:

该参数是用来接收一维数组,http_build_query()函数会把这个数组按照“键=值”格式化成我们所需要的URL,比如:

<?php
$data = array(
    'name'=>'fangzhijie',
    'qq'=>'747245429',
    'action'=>'check',
    'msg'=>'this is a test');
echo http_build_query($data);

结果是:

name=fangzhijie&qq=747245429&action=check&msg=this+is+a+test

第二个参数$numeric_prefix:

如果在基础数组中使用了数字下标同时给出了该参数,该参数值会作为基础数组中的数字下标元素的前缀展示,比如:

<?php
$data = array(
    'fangzhijie',
    '747245429',
    'check',
    'this is a test');
echo http_build_query($data,'test_');

结果是:

test_0=fangzhijie&test_1=747245429&test_2=check&test_3=this+is+a+test

第三个参数$arg_separato:

该参数是分隔参数,默认是&,比如:

<?php
$data = array(
    'name'=>'fangzhijie',
    'qq'=>'747245429',
    'action'=>'check',
    'msg'=>'this is a test');
echo http_build_query($data,'','&mtdg&');

结果是:

name=fangzhijie&mtdg&qq=747245429&mtdg&action=check&mtdg&msg=this+is+a+test

3.总结

我为什么要把这个函数特意独立开章说明,其一是加深对这个函数的印象和使用技巧,其二是这个函数在封装例如:第三方登录接口、微信公众号接口等,是个实用性很高的函数,能够很好地避免我们拼接URL导致的不必要的错误,因此我们需要很好的掌握它。

来源:锌闻网

猜你喜欢

转载自www.cnblogs.com/vwvwvwgwg/p/12709184.html