(PHP 5)
http_build_query 生成 URL-encode 之後的請求字符串
string http_build_query ( array $formdata [, string $numeric_prefix ] )
使用給出的關聯(或下標)數組生成一個經過 URL-encode 的請求字符串。參數 formdata 可以是數組或包含屬性的對象。一個 formdata 數組可以是簡單的一維結構,也可以是由數組組成的數組(其依次可以包含其它數組)。如果在基礎數組中使用了數字下標同時給出了 numeric_prefix 參數,此參數值將會作為基礎數組中的數字下標元素的前綴。這是為了讓PHP或其它 CGI 程序在稍後對數據進行解碼時獲取合法的變量名。
Example #1 http_build_query() 使用示例
<?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 ?>
Example #2 http_build_query() 使用數字下標的元素
<?php $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])
*