function http_build_query_helper($array, $name)
 {
     $tmp = array();
     foreach ($array as $key => $value) {
         if (is_array($value)) {
             array_push($tmp, http_build_query_helper($value, sprintf('%s[%s]', $name, $key)));
         } elseif (is_scalar($value)) {
             array_push($tmp, sprintf('%s[%s]=%s', $name, urlencode($key), urlencode($value)));
         } elseif (is_object($value)) {
             array_push($tmp, http_build_query_helper(get_object_vars($value), sprintf('%s[%s]', $name, $key)));
         }
     }
     // Argument seperator
     $separator = ini_get('arg_separator.output');
     if (strlen($separator) == 0) {
         $separator = '&';
     }
     return implode($separator, $tmp);
 }
Esempio n. 2
0
 function http_build_query_helper($array, $name, $arg_separator)
 {
     $tmp = array();
     foreach ($array as $key => $value) {
         if (is_array($value)) {
             array_push($tmp, http_build_query_helper($value, sprintf('%s[%s]', $name, $key), $arg_separator));
         } elseif (is_scalar($value)) {
             array_push($tmp, sprintf('%s[%s]=%s', $name, urlencode($key), urlencode($value)));
         } elseif (is_object($value)) {
             array_push($tmp, http_build_query_helper(get_object_vars($value), sprintf('%s[%s]', $name, $key), $arg_separator));
         }
     }
     return implode($arg_separator, $tmp);
 }