• php的http_build_query使用


    http_build_query生成 url-encoded 之后的请求字符串

    1、使用键值对,关联数组:

    <?php
    $data = array('foo'=>'bar',
                  'baz'=>'boom',
                  'cow'=>'milk',
                  'php'=>'hypertext processor');
                  
    echo http_build_query($data);
    /* 输出:
          foo=bar&baz=boom&cow=milk&php=hypertext+processor
    */
    ?> 

    2、使用数字下标

    <?php
    $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
    */
    ?> 

     3、使用多维数组:

    <?php
    $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 下的元素)则不需要为了合法的变量名而加上前缀。
    */
    ?> 

    4、使用对象

    <?php
    class myClass {
      var $foo;
      var $baz;
      
      function myClass() {
        $this->foo = 'bar';
        $this->baz = 'boom';
      }
    }
    
    $data = new myClass();
    
    echo http_build_query($data);
    /* 输出:
          foo=bar&baz=boom
    */
    ?> 
  • 相关阅读:
    Oracle Flashback Technologies (总)
    Oracle Flashback Technologies
    Oracle Flashback Technologies
    Oracle Flashback Technologies
    Oracle Flashback Technologies
    CDB中plug PDB
    PDB重命名
    Redo丢失场景和处理方法
    mkisofs简单定制linux iso
    zabbix 监控tomcat实例
  • 原文地址:https://www.cnblogs.com/wangjiafang/p/4422195.html
Copyright © 2020-2023  润新知