PHP函数从数组构建查询字符串

Rob*_*nes 156 php

我正在寻找PHP函数的名称来从一组键值对构建一个查询字符串.请注意,我正在寻找内置的PHP函数来做到这一点,而不是一个自制的(这是所有的谷歌搜索似乎返回).有一个,我只是不记得它的名字或在php.net上找到它.IIRC它的名字并不那么直观.

tj1*_*111 297

你在找http_build_query().

  • 小心这个功能!它将省略值为NULL的任何键值对.`echo http_build_query(array("foo"=>"bar","bar"=> null))`只生成`foo = bar` (14认同)

Sui*_*oth 21

这是一个简单的php4友好实现:

/**
* Builds an http query string.
* @param array $query  // of key value pairs to be used in the query
* @return string       // http query string.
**/
function build_http_query( $query ){

    $query_array = array();

    foreach( $query as $key => $key_value ){

        $query_array[] = urlencode( $key ) . '=' . urlencode( $key_value );

    }

    return implode( '&', $query_array );

}
Run Code Online (Sandbox Code Playgroud)

  • 这是一个php4版本. (30认同)