Strip Slashes from PHP Magic Quotes
Here are a couple of functions to strip or remove slashes (i.e., backslashes) from variables when PHP magic quotes are enabled on the server.
Strip slashes from strings
If you are working with a string, you can do something like this:
if (get_magic_quotes_gpc()) {
$message = stripslashes($message);
}
Here we are using stripslashes to remove all backslashes from the string. So if $message contains \', this snippet will replace it with '. Likewise, if $message contains \\', it will be replaced with \', and so on.
Strip slashes from arrays
In this example, we’ll strip all backslashes from common global variables ($_POST, $_GET, $_COOKIE, and $_REQUEST), which happen to be arrays.
if (get_magic_quotes_gpc()) {
$_POST = array_map('stripslashes', $_POST);
$_GET = array_map('stripslashes', $_GET);
$_COOKIE = array_map('stripslashes', $_COOKIE);
$_REQUEST = array_map('stripslashes', $_REQUEST);
}
Here we first use get_magic_quotes_gpc() to check whether or not magic quotes are enabled. If they are enabled, then we pass each of our global variables through array_map(), which in turn applies stripslashes() to each array value. The result is a set of global variables that have been properly “de-slashed”. Works with any array :)


