如果数据是
$data = '<a href="http://www.abc.com">my Anchor</a>
这个功能
$res = get_magic_quotes_gpc() ? stripslashes($data) : $data;
$res = mysql_real_escape_string($res); // php 4.3 and higher
将其转换为
<a href="\"http://www.abc.com"">my Anchor</a>
为什么
答案 0 :(得分:1)
第一行
$res = get_magic_quotes_gpc() ? stripslashes($data) : $data;
检查是否设置了magic_quotes_gpc。它会检查get_magic_quotes_gpc() function。如果设置了标志,则会在字符串上调用stripslashes。此函数从字符串中删除\。例如,它将每次出现的''转换为'并且每次出现的\\都会转换为\。
第二行
$res = mysql_real_escape_string($res);
进一步修改字符串。它取代了'with'。通常mysql_real_escape_string用于避免安全问题,特别是SQL Injection。将SQL查询发送到SQL数据库并使用字符串连接手动构建SQL语句时,您的代码很容易受到攻击。
总而言之:
这些命令仅在使用字符串连接构建SQL语句时才有意义。