Heim  >  Artikel  >  php教程  >  写自己的 http_build_query

写自己的 http_build_query

WBOY
WBOYOriginal
2016-06-21 09:06:121007Durchsuche

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



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:在PHP中使用socket_rawNächster Artikel:PHP经典的给图片加水印程序