Hi Jeffery, To use a class method as a valid callback, you should pass an array like
$_POST = array_map(array($this, 'StripSlashesDeep'), $_POST); Hope this helps, -Guillermo On Mon, 7 Feb 2005 17:10:32 -0600, Greg Donald <[EMAIL PROTECTED]> wrote: > On Tue, 08 Feb 2005 09:37:11 +1100, Jeffery Fernandez > <[EMAIL PROTECTED]> wrote: > > I have the following 2 functions which I intend to clean GPC off slashes > > if magic_quotes_gpc is turned on. > > > > function StripGpcSlashes() > > { > > if (get_magic_quotes_gpc()) > > { > > $_POST = array_map('StripSlashesDeep', $_POST); > > $_GET = array_map('StripSlashesDeep', $_GET); > > $_COOKIE = array_map('StripSlashesDeep', $_COOKIE); > > } > > } > > > > function StripSlashesDeep($value) > > { > > $value = is_array($value) > > ? array_map('StripSlashesDeep', $value) > > : stripslashes($value); > > > > return $value; > > } > > > > However when I call $this->StripGpcSlashes(); from within a class, I get > > the following error: > > */ array_map(): The first argument, 'StripSlashesDeep', should be either > > NULL or a valid callback /* > > > > Anyone have suggestions as to what I am doing wrong ? > > Mine works fine, but I don't use it in any classes: > > set_magic_quotes_runtime(0); > if(get_magic_quotes_gpc() == 0){ > $_GET = isset($_GET) ? array_map("slashes", $_GET) : array(); > $_POST = isset($_POST) ? array_map("slashes", $_POST) : array(); > $_COOKIE = isset($_COOKIE) ? array_map("slashes", $_COOKIE) : array(); > } > > function slashes($var){ > if(is_array($var)) > return array_map("slashes", $var); > else > return addslashes($var); > } > > -- > Greg Donald > Zend Certified Engineer > http://destiney.com/ > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php