专栏首页沈唁志PHP中系统函数http_build_query系统函数使用方法

PHP中系统函数http_build_query系统函数使用方法

什么是 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] => shenyan
[age] => 18
)
name=shenyan&age=18

传入一维索引数组

Array
(
[0] => shenyan
[1] => 18
)
0=shenyan&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 也不会被打印出来!

沈唁志|一个PHPer的成长之路! 原创文章采用CC BY-NC-SA 4.0协议进行许可,转载请注明:转载自:PHP中系统函数http_build_query系统函数使用方法

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 在Ubuntu 14.04上安装Zimbra开源版

    Zimbra是一个完整的邮件服务器,它提供配置的Postfix与OpenDKIM,Amavis,ClamAV和Nginx,准备处理一个或多个域的邮件。Linod...

    沈唁
  • 2018年阅文集团PHP工程师面试题分享

    阅文集团起点中文网是怎么面试的,我也说不清楚,我好像不属于正规流程,自我介绍什么的我都没有说过 ?

    沈唁
  • 在 LNMP 一键安装包的环境下安装 ThinkPHP5 访问报错 500 的解决方法

    目前 LNMP 一键安装包已经是 1.5 的版本了,一个朋友找我帮她看服务器环境的时候出现了这个问题,修改伪静态目录不生效

    沈唁
  • requireJS入门

    RequireJS 是一个JavaScript模块加载器。它非常适合在浏览器中使用,但它也可以用在其他脚本环境, 就像 Rhino and Node. ...

    _kyle
  • 什么是Angular的Target

    在使用Angular CLI创建的Angular项目里,有一个angular.json配置文件:

    Jerry Wang
  • 简单猴子吃香蕉游戏,做项目构建流程定制

    主要介绍游戏玩法,具体实现,参考游戏源码。玩法是:游戏开始后,通过虚拟摇杆控制猴子在屏幕左右方向跳动,屏幕上随机出现香蕉,过一段时间后消失,猴子吃到香蕉得分,...

    一枚小工
  • Github项目推荐 | Awesome-Image-Inpainting 图像补全相关资源大列表

    [1] Bertalmio, M., Sapiro, G., Caselles, V., & Ballester, C. (2000, July). Image...

    AI研习社
  • webSocket

    jinghong
  • 如何有效使用Mysql的Query Cache

    须要根据Query Cache失效机制来判断哪些表适合使用Query哪些表不适合。 由于Query Cache的失效主要是因为Query所依赖的Table数据发...

    dys
  • 2D景观转3D风景大片,无惧复杂光线与遮挡,人类离「躺着旅行」的梦想又近了一步

    上班的时候想旅行,休假的时候想躺着,这是大多数年轻人的状态。如果能够躺在床上旅行,岂不美哉?

    机器之心

扫码关注云+社区

领取腾讯云代金券