The default PHP command magic_quotes_gpc in the server space provided by general space providers is on, that is, it is turned on. At this time, you can use the stripslashes() function to remove the automatically added backslashes. The usage is: for example, the variable containing the string is $str, then use the stripslashes() function to process the string: stripslashes($str), and the output result will be with the backslashes removed.
If you encounter the output result containing backslashes, you can use the stripslashes() function to process the output content, that is, $str=stripslashes($str), and save the backslashes contained in the output content. Remove.
But there is another problem, that is because the local PHP command magic_quotes_gpc is off. If this function is used, the normal backslashes will also be removed. This is not what we want.
The solution is to use the function get_magic_quotes_gpc() to detect. If it is in the open state, then the backslashes will be removed. If it is in the closed state, the backslashes will not be removed.
The program code is as follows:
$str=$_POST["str"]; //读取str的内容赋值给$str变量 if(get_magic_quotes_gpc()){ //如果get_magic_quotes_gpc()是打开的 $str=stripslashes($str); //将字符串进行处理 }
This article was revised as follows at 10:08:03 on April 25, 2012:
Here are three ways to solve this problem:
1 Modify the PHP configuration file php.ini
This method is only suitable if you have the right to manage the server. If you use virtual space, you can only use the last two methods.
In the PHP configuration file php.ini, set magic_quotes_gpc, magic_quotes_runtime, and magic_quotes_sybase to off. As shown below:
magic_quotes_gpc = Off magic_quotes_runtime = Off magic_quotes_sybase = Off
2 Use .htaccess file
This method only works if the server supports htaccess, which is generally supported by current servers
Add the following sentence to the .htaccess file in the program directory:
php_flag magic_quotes_gpc Off
3 Block
in code
This method is the most portable and can be used as long as it supports PHP without considering the server configuration.
Add the following code
if(get_magic_quotes_gpc()){ function stripslashes_deep($value){ $value=is_array($value)?array_map('stripslashes_deep',$value):stripslashes($value); return $value; } $_POST=array_map('stripslashes_deep',$_POST); $_GET=array_map('stripslashes_deep',$_GET); $_COOKIE=array_map('stripslashes_deep',$_COOKIE); $_REQUEST=array_map('stripslashes_deep',$_REQUEST); }