PHP函数http_build_query使用详解


Posted in PHP onAugust 20, 2014

什么是http_build_query?

使用给出的关联(或下标)数组生成一个经过 URL-encode 的请求字符串。参数 formdata 可以是数组或包含属性的对象。一个 formdata 数组可以是简单的一维结构,也可以是由数组组成的数组(其依次可以包含其它数组)。如果在基础数组中使用了数字下标同时给出了 numeric_prefix 参数,此参数值将会作为基础数组中的数字下标元素的前缀。这是为了让 PHP 或其它 CGI 程序在稍后对数据进行解码时获取合法的变量名
http_build_query有多种用法,不仅可以传入关联数组,同时也可以传入索引数组,甚至多维数组以及对象。

http_build_query怎么使用?

string http_build_query ( array $formdata [, string $numeric_prefix ] )

传入一维关联数组

Array

(

    [name] => lizhong

    [age] => 18

)

name=lizhong&age=18

传入一维索引数组

Array

(

    [0] => lizhong

    [1] => 18

)

0=lizhong&1=18

传入二维数组
Array

(

    [a] => Array

        (

            [a] => a

            [b] => b

        )
    [c] => c

)
a%5Ba%5D=a&a%5Bb%5D=b&c=c

传入对象
class Obj{

    public $a = 'a';

    public $b = 'b';

    private $c = 'c';

    public function func(){

        return; 

    }

}

 

 

$obj = new Obj();

 

$str = http_build_query($obj);

 

echo $str;

输出:
a=a&b=b

因为$c为私有变量,所以访问不到$c成员,于是只有a与b被输出。而对象里的function也不会被打印出来!
PHP 相关文章推荐
php获取服务器信息的实现代码
Feb 04 PHP
php 模拟get_headers函数的代码示例
Apr 27 PHP
CURL状态码列表(详细)
Jun 27 PHP
PHP5.5在windows安装使用memcached服务端的方法
Apr 16 PHP
PHP中执行cmd命令的方法
Oct 11 PHP
PHP获得数组交集与差集的方法
Jun 10 PHP
php遍历树的常用方法汇总
Jun 18 PHP
PHP实现动态web服务器方法
Jul 29 PHP
两种php给图片加水印的实现代码
Apr 18 PHP
php生成图片验证码的实例讲解
Aug 03 PHP
PHP中常见的密码处理方式和建议总结
Oct 14 PHP
PDO::commit讲解
Jan 27 PHP
PHP函数in_array()使用详解
Aug 20 #PHP
PHP中使用json数据格式定义字面量对象的方法
Aug 20 #PHP
PHP采用自定义函数实现遍历目录下所有文件的方法
Aug 19 #PHP
浅谈php函数serialize()与unserialize()的使用方法
Aug 19 #PHP
PHP将回调函数作用到给定数组单元的方法
Aug 19 #PHP
php实现文件下载代码分享
Aug 19 #PHP
PHP中array_map与array_column之间的关系分析
Aug 19 #PHP
You might like
怎样在UNIX系统下安装php3
2006/10/09 PHP
PHPMailer邮件类利用smtp.163.com发送邮件方法
2008/09/11 PHP
浅谈php中mysql与mysqli的区别分析
2013/06/10 PHP
PHP读取文件的常见几种方法
2016/11/03 PHP
PHP上传图片、删除图片简单实例
2016/11/12 PHP
PHP递归遍历文件夹去除注释并压缩php源代码的方法示例
2018/05/23 PHP
thinkPHP5框架auth权限控制类与用法示例
2018/06/12 PHP
laravel 关联关系遍历数组的例子
2019/10/10 PHP
禁止选中文字兼容IE、Chrome、FF等
2013/09/04 Javascript
javascript常用对话框小集
2013/09/13 Javascript
表格奇偶行设置不同颜色的核心JS代码
2013/12/24 Javascript
jQuery实现可用于博客的动态滑动菜单完整实例
2015/09/17 Javascript
Ionic实现仿通讯录点击滑动及$ionicscrolldelegate使用分析
2016/01/18 Javascript
JavaScript中创建对象的7种模式详解
2017/02/21 Javascript
详解vue的diff算法原理
2018/05/20 Javascript
Bootstrap 按钮样式与使用代码详解
2018/12/09 Javascript
原生JS实现pc端轮播图效果
2020/12/21 Javascript
[00:36]DOTA2勇士令状莱恩声望物品——冥晶之厄展示
2018/05/25 DOTA
python之Character string(实例讲解)
2017/09/25 Python
利用Python如何生成hash值示例详解
2017/12/20 Python
Python进阶之尾递归的用法实例
2018/01/31 Python
Python实现的插入排序,冒泡排序,快速排序,选择排序算法示例
2019/05/04 Python
12个Python程序员面试必备问题与答案(小结)
2019/06/24 Python
使用Python求解带约束的最优化问题详解
2020/02/11 Python
TensorFlow获取加载模型中的全部张量名称代码
2020/02/11 Python
Python类及获取对象属性方法解析
2020/06/15 Python
Selenium之模拟登录铁路12306的示例代码
2020/07/31 Python
万豪国际住宅与别墅集团:Homes & Villas by Marriott International
2020/10/08 全球购物
司马光教学反思
2014/02/01 职场文书
吃空饷专项治理工作实施方案
2014/03/04 职场文书
优秀求职信
2014/05/29 职场文书
教师职业道德事迹材料
2014/08/18 职场文书
党员自我剖析材料范文
2014/10/06 职场文书
2015年世界环境日演讲稿
2015/03/18 职场文书
有趣的二维码:使用MyQR和qrcode来制作二维码
2021/05/10 Python
Go gorilla/sessions库安装使用
2022/08/14 Golang