首页 › 程序设计 › php

PHP关于反斜杠处理函数addslashes()和stripslashes()的用法

泡在网上的日子 / 文 发表于2017-01-18 23:34 次阅读 斜杠,PHP

PHP自带的库函数 addslashes() 和 stripslashes() 都属于字符串处理类函数,作用正好相反:

addslashes():对输入字符串中的某些预定义字符前添加反斜杠,这样处理是为了数据库查询语句等的需要。这些预定义字符是:单引号 (') ,双引号 (") ,反斜杠 (\) ,NULL。

stripslashes():删除由 addslashes() 函数添加的反斜杠。该函数用于清理从数据库或 HTML 表单中取回的数据。(若是连续二个反斜杠,则去掉一个,保留一个;若只有一个反斜杠,就直接去掉。)

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

if (get_magic_quotes_gpc()){
      code....
}

addslashes() 例子:

<?php
$str = "Who's John Adams?";
echo $str . " This is not safe in a database query.<br />";
echo addslashes($str) . " This is safe in a database query.";
?>

输出:

Who's John Adams? This is not safe in a database query.
Who\'s John Adams? This is safe in a database query.

stripslashes() 例子:

<?php
echo stripslashes("Who\'s John Adams?");
?>

输出:

Who's John Adams?
收藏 赞 (0) 踩 (0)
上一篇:国外程序员整理的 PHP 资源大全
国外程序员整理的 PHP 资源大全 ziadoz 在 Github 发起维护的一个 PHP 资源列表,内容包括:库、框架、模板、安全、代码分析、日志、第三方库、配置工具、Web 工具、书籍、电子书、经典博文等等。 依赖管理 依赖和包管理库 Composer / Packagist :一个包和
下一篇:关于使用Markdown解析器Parsedown应该注意的编码问题
使用 Parsedown 来解析Markdown文本的时候,出现了一个很奇怪的问题: 添加代码块的时候不允许添加···,在xml文件里不能添加注释,否则此段代码块中的内容会被吃掉 下面是一个问题文本的例子 总结一下以前自定义字体的方法1.**通过findViewById找到view,