php http_build_query 拼接數組
?
http_build_query
(PHP 5)
http_build_query?—?產生 URL-encode 之後的請求字串
說明
string?
http_build_query?(?array?$formdata?[,?string?$numeric_prefix?] )
使用給出的關聯(或下標)數組產生一個經過 URL-encode 的請求字串。參數?formdata?可以是數組或包含屬性的對象。一個?formdata?數組可以是簡單的一維結構,也可以是由數組組成的數組(其依次可以包含其它數組)。如果在基礎數組中使用了數字下標同時給出了?numeric_prefix?參數,此參數值將會作為基礎數組中的數字下標元素的首碼。這是為了讓 PHP 或其它 CGI 程式在稍後對資料進行解碼時擷取合法的變數名。
Note:
用?arg_separator.output?來分隔參數。
Example #1?http_build_query()?使用樣本
$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
?>
Example #2?http_build_query()?使用數字下標的元素
$data?=?array('foo',?'bar',?'baz',?'boom',?'cow'?=>?'milk',?'php'?=>'hypertext?processor');
??????????????
echo?http_build_query($data);
?
echo?http_build_query($data,?'myvar_');
?>
=======================================================================================
簡單的理解這兩個函數
parse_str就是將一個url ?後面的參數轉換成一個數組
array parse_str(url,arr)
parse_url是將一個完整的url解析成數組
array parse_url(string url)
http_build_query就是將一個數群組轉換成url ?後面的參數字串,會自動進行urlencode處理
string http_build_query ( array formdata [, string numeric_prefix])
後面的給數組中沒有指定鍵或者鍵為數位加下標