php函数get_magic_quotes_gpc详解

set_magic_quotes_runtime是用来设置PHP 环境配置的变量 magic_quotes_runtime 值。
0-关闭 1-打开
程序中检测状态用get_magic_quotes_runtime,返回 0 表示关闭本功能;返回 1 表示本功能打开。若magic_quotes_runtime 打开时,所有外部引入的数据库资料或者文件等等都会自动转为含有反斜线溢出字符的资料。

本 函数取得 PHP 环境配置的变量 magic_quotes_gpc (GPC, Get/Post/Cookie) 值。返回 0表示关闭本功能;返回 1 表示本功能打开。当 magic_quotes_gpc 打开时,所有的 ' (单引号), " (双引号), / (反斜线) and 空字符会自动加上转义符/;

默认情况下,PHP 指令magic_quotes_gpc为 on,它主要是对所有的 GET、POST 和 COOKIE (即G P C)数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_ magic_quotes_gpc() 进行检测。


其实这个函数就是判断有PHP有没有自动调用addslashes这个函数

 

<?php
echo get_magic_quotes_gpc(); //显示gpc状态值(0或1)
echo $_POST['lastname'];

echo addslashes($_POST['lastname']);

if (!get_magic_quotes_gpc()) {
$lastname = addslashes($_POST['lastname']);
} else {
$lastname = $_POST['lastname'];
}

echo
$lastname; //
Simao/'pig
$sql = "INSERT INTO lastnames (lastname) VALUES ('$lastname')";
?>

你可能感兴趣的:(php函数get_magic_quotes_gpc详解)