登录  /  注册

PHP安全过滤函数有哪些?

PHPz
发布: 2016-06-13 11:25:49
原创
1104人浏览过

php安全过滤函数有:1、stripslashes函数;2、htmlspecialchars函数;3、htmlentities函数;4、strip_tags函数;5、intval函数等等。

PHP安全过滤函数有哪些?

现代互联网中,我们经常要 从世界各地的用户中获得输入数据。但是,我们都知道“永远不能相信那些用户输入的数据”。之前做PHP开发的时候,小网站、低需求,也产生了几个不安全的开发作品。PHP的安全过滤函数的使用可以有效的防止像sql攻击、xss攻击的问题。

PHP安全过滤函数

1、stripslashes() 函数

stripslashes()主要功能是删除反斜杠

<?php
echo stripslashes("Who\&#39;s Bill Gates?");
?>
登录后复制

输出结果:

Who&#39;s Bill Gates?
登录后复制

2、htmlspecialchars() 函数

使用这个函数会把字符串转换为HTML实体

众所周知像 双引号“,单引号‘,在操作对数据表进行操作的时候是很危险的。而使用htmlsprcialchars后,双引号就会变成",单引号就变成'

<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars($str);
?>
登录后复制

以上代码的 HTML 输出如下(查看源代码):

<!DOCTYPE html>
<html>
<body>
This is some <b>bold</b> text.
</body>
</html>
登录后复制

以上代码的浏览器输出:

This is some <b>bold</b> text.
登录后复制

3、htmlentities() 函数

htmlentities() 把字符转换为 HTML 实体

htmlentities和htmlsprcialchars的使用和效果都比较类似,htmlsprcialchars只是转换以上几种特殊字符,而htmlentities转换全部的字符。

需要额外说明的一点在于使用htmlentities处理中文的时候第三个参数encoding,要使用正确的编码,否则会出现乱码。一般来说使用htmlsprcialchars转换基本字符就已经足够了。

<?php
$str = "<? W3S?h????>";
echo htmlentities($str);
?>
登录后复制

以上代码的 HTML 输出如下(查看源代码):

<!DOCTYPE html>
<html>
<body>
<© W3Sçh°°¦§>
</body>
</html>
登录后复制

以上代码的浏览器输出:

<? W3S?h????>
登录后复制

4、strip_tags()函数

剥去字符串中的 HTML 标签:

strip_tags() 函数剥去字符串中的 HTML、XML 以及 PHP 的标签。

注释:该函数始终会剥离 HTML 注释。这点无法通过 allow 参数改变。

注释:该函数是二进制安全的。

<?php
echo strip_tags("Hello <b>world!</b>");
?>
登录后复制
Hello world!
登录后复制

另外还有像intval,md5等函数,在程序中合理使用都可以起到很好的效果。

更多相关知识,请访问 PHP中文网!!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号