mysql_real_escape_string

mysql_real_escape_string ——转义 SQL 语句中使用的字符串中的特殊字符,并考虑到连接的当前字符集

说明

本函数将 unescaped_string 中的特殊字符转义,并计及连接的当前字符集,因此可以安全用于 mysql_query()

Note:        mysql_real_escape_string() 并不转义 % 和 _

Example #1 mysql_real_escape_string() 例子

以上例子将产生如下输出:

以上摘自:http://php.net/manual/zh/function.mysql-real-escape-string.php

若想在执行SQL语句时转义传入的 ‘ % ’和‘  _  ’字符即MYSQL不把它们当做通配符处理,需在该字符前加 ‘   ‘ (backlash)或用 ‘ [   ] ‘(bracket)包裹。可使用以下PHP函数处理:

str_replace('%', '%', $haystack);

str_replace('_', '_', $haystack);

str_replace('%', '[%]', $haystack);

str_replace('_', '[_]', $haystack);