我们知道, php的 parse_str() 函数可以将 url query 格式的字符串解析成关联数组, 与php生成 $_get 使用的相同的策略. parse_str() 的"反函数"是 http_build_query(), 它将关联数组和对象生成 url query 字符串. 不过, 只在php5之后才被支持. 所以, 我们需要编写自己的 http_build_query()
function my_http_build_query($data){ $str = ''; foreach($data as $key=>$value){ foreach(child_str($value) as $v){ $str .= "$key$v&"; } } return substr($str, 0, strlen($str)-1);}function child_str($data){ $str = array(); if(is_array($data)){ foreach($data as $key=>$value){ foreach(child_str($value) as $v){ $str[] = "[$key]$v"; } } }else{ // do url encoding here $data = str_replace('&', '%26', '='.$data); $str[] = $data; } return $str;}
商业源码热门下载www.html.org.cn
新闻热点
疑难解答