虚拟主机域名注册-常见问题网络编程问题PHP

PHP关于“\”处理函数addslashes()和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?


来源:
阅读:2212
日期:2017-10-27

【 字体: 】 
上一篇:JS判断是不是移动端 是iOS或者Android手机移动端
下一篇:PHP imagecreatefromstring() 检查图片是否损坏
  >> 相关文章
 
发表评论

字数0
请输入验证码:


  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
网友评论
没有相关评论。
会员 客服 QQ 电话 充值 工单
Top

24小时客服热线

咨询售后问题请进入 工单提问