zoukankan      html  css  js  c++  java
  • http_build_query

    http_build_query:生成 url-encoded 之后的请求字符串描述string 

    用法:http_build_query ( array formdata [, string numeric_prefix] )

    $data = array(
        'foo' => 'bar',
        'baz' => 'boom',
        'cow' => 'milk',
        'php' => 'hypertext processor',
    );
    echo http_build_query($data);
    /* 输出:
    0=foo&1=bar&2=baz&3=boom&cow=milk&php=hypertext+processor
     */
    $data = array('foo', 'bar', 'baz', 'boom', 'cow' => 'milk', 'php' => 'hypertext processor');
    echo http_build_query($data);
    /* 输出:
    0=foo&1=bar&2=baz&3=boom&cow=milk&php=hypertext+processor
     */
    echo http_build_query($data, 'myvar_');
    /* 输出:
    myvar_0=foo&myvar_1=bar&myvar_2=baz&myvar_3=boom&cow=milk&php=hypertext+processor
     */
    $data = array(
        'user'     => array(
            'name' => 'Bob Smith',
            'age'  => 47,
            'sex'  => 'M',
            'dob'  => '5/12/1956',
        ),
        'pastimes' => array('golf', 'opera', 'poker', 'rap'),
        'children' => array(
            'bobby' => array(
                'age' => 12,
                'sex' => 'M',
            ),
            'sally' => array(
                'age' => 8,
                'sex' => 'F',
            ),
        ),
        'CEO',
    );
    echo http_build_query($data, 'flags_');
    /* 输出:(为了可读性对其进行了折行)
    user[name]=Bob+Smith&user[age]=47&user[sex]=M&user[dob]=5%1F12%1F1956&
    pastimes[0]=golf&pastimes[1]=opera&pastimes[2]=poker&pastimes[3]=rap&
    children[bobby][age]=12&children[bobby][sex]=M&children[sally][age]=8&
    children[sally][sex]=F&flags_0=CEO
    注意:只有基础数组中的数字下标元素“CEO”才获取了前缀,其它数字下标元素(如
    pastimes 下的元素)则不需要为了合法的变量名而加上前缀。
     */
    class myClass
    {
        public $foo;
        public $baz;
        function myClass()
        {
            $this->foo = 'bar';
            $this->baz = 'boom';
        }
    }
    $data = new myClass();
    echo http_build_query($data);
    /* 输出:
    foo=bar&baz=boom
     */

    总结:非常使用的函数,php从本质上讲是一种面向过程的语言,只不过它封装很多的函数,并且有class,interface等内容,才可以说是能面向对象。

  • 相关阅读:
    Redis Sentinel 哨兵模式
    Redis 读写分离
    Redis 分布式锁实现
    Redis 缓存的收益和成本
    Redis 实现排行榜
    Spring Boot 使用 Cache 缓存
    Spring Boot 整合 Redis
    Spring Boot 使用阿里巴巴 Druid 数据源
    Spring Boot 整合 JWT
    B1003
  • 原文地址:https://www.cnblogs.com/lmaster/p/7250364.html
Copyright © 2011-2022 走看看