您现在的位置是:首页 > PHP技术PHP技术
PHP关于反斜杠处理函数addslashes()和stripslashes()的用法
2015-03-07【PHP技术】2359 人已围观
简介在制作英文网站的时候,后台经常需要输入一些字符符号。有的符号跟程序处理时的符号是一样的,这样经常造成msql语句...
在制作英文网站的时候,后台经常需要输入一些字符符号。有的符号跟程序处理时的符号是一样的,这样经常造成msql语句出错,这时我们需要对用户输入的内容进行转义。 addsalshes,stripslashes二个函数就是为此而生。
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?
关注宁波网站建设博客,更多精彩分享,敬请期待!
Tags:
很赞哦! ()
相关文章
随机图文
Sublime Text添加插入带当前代码段说明
sublime是小编目前使用当中的一款php程序编辑器,功能非常的强大,今天推荐给各位.下面是如何在代码段内快捷插入常用说明.非常实用哦 ...mysql常见的多表查询语句
select*fromTable1,Table2whereTable1.id=1andTbale2.id-2(是某一相同字段)注意这样的查询...经典SQL语句集锦
经典SQL语句集锦(收藏版) 这是PHP+Mysql项目常见的查询sql语句,细细读来会给我们程序员很大的启发,特摘录下来以备不时查询需...PHP学习笔记:PHP遍历数组的几种方法
PHP中遍历数组有三种常用的方法: 一、使用for语句循环遍历数组; 二、使用foreach语句遍历数组; 三、联合使用list()、...