function test_MAX_commonUnslashArray()
 {
     $sValue = 'abcd';
     $this->assertEqual('abcd', MAX_commonUnslashArray($sValue));
     $sValue = 'ab\\cd';
     $this->assertEqual('abcd', MAX_commonUnslashArray($sValue));
     $sValue = 'ab\\\\cd';
     $this->assertEqual('ab\\cd', MAX_commonUnslashArray($sValue));
     $aValue = array('abcd', 'ab\\cd', 'ab\\\\cd');
     $this->assertEqual(array('abcd', 'abcd', 'ab\\cd'), MAX_commonUnslashArray($aValue));
     $aValue = array('abcd', 'ab\\cd', 'ab\\\\cd', array('abcd', 'ab\\\\cd'));
     $this->assertEqual(array('abcd', 'abcd', 'ab\\cd', array('abcd', 'ab\\cd')), MAX_commonUnslashArray($aValue));
 }
Beispiel #2
0
/**
 * This function takes an array of variable names
 * and makes them available in the global scope
 *
 * $_POST values take precedence over $_GET values
 *
 */
function phpAds_registerGlobalUnslashed()
{
    $args = func_get_args();
    $request = array();
    while (list(, $key) = each($args)) {
        if (isset($_GET[$key])) {
            $value = $_GET[$key];
        }
        if (isset($_POST[$key])) {
            $value = $_POST[$key];
        }
        if (isset($value)) {
            if (ini_get('magic_quotes_gpc')) {
                $value = MAX_commonUnslashArray($value);
            }
        } else {
            $value = null;
        }
        $GLOBALS[$key] = $request[$key] = $value;
        unset($value);
    }
    return $request;
}
Beispiel #3
0
/**
* Recursively removes slashes from the values in an array.
*
* @param array Input array.
* @return array Output array with values unslashed.
*/
function MAX_commonUnslashArray($a)
{
    if (is_array($a)) {
        reset($a);
        while (list($k, $v) = each($a)) {
            $a[$k] = MAX_commonUnslashArray($v);
        }
        reset($a);
        return $a;
    } else {
        return stripslashes($a);
    }
}