mirror of
https://github.com/ACSPRI/queXS
synced 2024-04-02 12:12:16 +00:00
68 lines
1.9 KiB
PHP
68 lines
1.9 KiB
PHP
<?php
|
|
// $Id$
|
|
|
|
// {{{ http_build_query
|
|
/**
|
|
* Replacement for http_build_query()
|
|
*
|
|
* @link http://php.net/function.http-build-query
|
|
* @author vlad_mustafin@ukr.net
|
|
* @author Arpad Ray <arpad@php.net>
|
|
*/
|
|
if (!function_exists('http_build_query')) {
|
|
function http_build_query($formdata, $numeric_prefix = null, $key = null)
|
|
{
|
|
$res = array();
|
|
foreach ((array)$formdata as $k => $v) {
|
|
if (is_resource($v)) {
|
|
return null;
|
|
}
|
|
$tmp_key = urlencode(is_int($k) ? $numeric_prefix . $k : $k);
|
|
if (!is_null($key)) {
|
|
$tmp_key = $key . '[' . $tmp_key . ']';
|
|
}
|
|
$res[] = (is_scalar($v))
|
|
? $tmp_key . '=' . urlencode($v)
|
|
: http_build_query($v, null , $tmp_key);
|
|
}
|
|
$separator = ini_get('arg_separator.output');
|
|
if (strlen($separator) == 0) {
|
|
$separator = '&';
|
|
}
|
|
return implode($separator, $res);
|
|
}
|
|
}
|
|
// }}}
|
|
// {{{ class HTML_AJAX_Serialize_Urlencoded
|
|
/**
|
|
* URL Encoding Serializer
|
|
*
|
|
* @category HTML
|
|
* @package AJAX
|
|
* @author Arpad Ray <arpad@php.net>
|
|
* @author David Coallier <davidc@php.net>
|
|
* @copyright 2005 Arpad Ray
|
|
* @license http://www.opensource.org/licenses/lgpl-license.php LGPL
|
|
* @version Release: 0.5.2
|
|
* @link http://pear.php.net/package/HTML_AJAX
|
|
*/
|
|
class HTML_AJAX_Serializer_Urlencoded
|
|
{
|
|
// {{{ serialize
|
|
function serialize($input)
|
|
{
|
|
return http_build_query(array('_HTML_AJAX' => $input));
|
|
}
|
|
// }}}
|
|
// {{{ unserialize
|
|
function unserialize($input)
|
|
{
|
|
parse_str($input, $ret);
|
|
return (isset($ret['_HTML_AJAX']) ? $ret['_HTML_AJAX'] : $ret);
|
|
}
|
|
// }}}
|
|
}
|
|
// }}}
|
|
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
|
|
?>
|