Rumah >php教程 >php手册 >写自己的 http_build_query

写自己的 http_build_query

WBOY
WBOYasal
2016-06-21 09:06:121054semak imbas

我们知道, 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;}



Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:在PHP中使用socket_rawArtikel seterusnya:PHP经典的给图片加水印程序