PHP htmlentities 和 htmlspecialchars的区别

一直对这两个转换htm字符为html实体的函数混淆不清,查询了一下文档,总结如下

htmlentities: Convert all applicable characters to HTML entities (将所有可用的字符转换成html实体)

htmlspecialchars : Convert special characters to HTML entities (将特殊的字符转换成html实体)

区别:(1) htmlentities转换所有的html标记,htmlspecialchars只格式化& ‘ " < 和 > 这几个特殊符号。

(2) 使用htmlentities不指定编码的话遇到中文会乱码

根据以上的对比,遇到需要将接收的数据转换为html实体的时候使用htmlspecialchars更好

时间: 2025-01-11 02:36:56

PHP htmlentities 和 htmlspecialchars的区别的相关文章

php htmlentities和htmlspecialchars 的区别

很多人都以为htmlentities跟htmlspecialchars的功能是一样的,都是格式化html代码的,我以前也曾这么认为,但是今天我发现并不是这样的. The translations performed are: 复制代码 代码如下: '&' (ampersand) becomes '&' '"' (double quote) becomes '"' when ENT_NOQUOTES is not set. ''' (single quote) becom

PHP中htmlentities和htmlspecialchars的区别

这两个函数的功能都是转换字符为HTML字符编码,特别是url和代码字符串.防止字符标记被浏览器执行.使用中文时没什么区别,但htmlentities会格式化中文字符使得中文输入是乱码 htmlentities转换所有的html标记,htmlspecialchars只格式化& ' " < 和 > 这几个特殊符号 $str = '<a href="demo.php?m=index&a=index&name=中文">测试页面</

php 去除html标记--strip_tags与htmlspecialchars的区别详解

php 去除html标记--strip_tags与htmlspecialchars的区别详解 作者: 字体:[增加 减小] 类型:转载 时间:2013-06-26 本篇文章是对php中去除html标记以及strip_tags与htmlspecialchars的区别进行了详细的分析介绍,需要的朋友参考下 strip_tags  去掉 HTML 及 PHP 的标记. 语法: string strip_tags(string str); 传回值: 字串 函式种类: 资料处理 内容说明  本函式可去掉字

关于htmlentities 、htmlspecialchars、addslashes的使用

1.html_entity_decode():把html实体转换为字符. Eg:$str = "just atest & 'learn to use '"; echo html_entity_decode($str); echo "<br />"; echo html_entity_decode($str,ENT_QUOTES); echo "<br />"; echo html_entity_decode($st

153-PHP htmlentities函数

<?php //定义一个HTML代码字符串 $str=<<<HTM <a href=#><b><i>到一个网址的链接</i></b></a> HTM; $str=htmlentities($str); //将字符串中指定的字符进行转换 echo $str; ?> PHP中htmlentities和htmlspecialchars的区别:这两个函数的功能都是转换字符为HTML字符编码,特别是url和代码字符

防XXS和SQL注入

对网站发动XSS攻击的方式有很多种,仅仅使用php的一些内置过滤函数是对付不了的,即使你将filter_var,mysql_real_escape_string,htmlentities,htmlspecialchars,strip_tags这些函数都使用上了也不一定能保证绝对的安全. 那么如何预防 XSS 注入?主要还是需要在用户数据过滤方面得考虑周全,在这里不完全总结下几个 Tips 1. 假定所有的用户输入数据都是"邪恶"的 2. 弱类型的脚本语言必须保证类型和期望的一致 3.

PHP安全性防范方式

SQL注入 SQL注入是一种恶意攻击,用户利用在表单字段输入SQL语句的方式来影响正常的SQL执行. 防范方式 使用mysql_real_escape_string(),或者addslashes()过滤数据 手动检查每一数据是否为正确的数据类型 使用预处理语句并绑定变量 使用准备好的预处理语句 分离数据和SQL逻辑 预处理语句将自动过滤(如:转义) 把它作为一个编码规范,可以帮助团队里的新人避免遇到以上问题 相比于直接执行SQL语句,预处理语句有两个主要优点 预处理语句大大减少了分析时间,只做了

PHP如何防止XSS攻击

PHP防止XSS跨站脚本攻击的方法:是针对非法的HTML代码包括单双引号等,使用htmlspecialchars()函数 . 在使用htmlspecialchars()函数的时候注意第二个参数, 直接用htmlspecialchars($string) 的话,第二个参数默认是ENT_COMPAT,函数默认只是转化双引号(“), 不对单引号(‘)做转义. 所以,htmlspecialchars函数更多的时候要加上第二个参数, 应该这样用: htmlspecialchars($string,ENT_

php中htmlspecialchars()函数和addslashes()函数的使用和区别

在防止被注入攻击时,常会用到两个函数:htmlspecialchars()和addslashes()函数.这两个函数都是对特殊字符进行转义. 1)addslashes()作用及使用 addslashes()通常用于防止sql注入,它可对通过get,post和cookie传递过来的参数的单引号和双引号已经null前加“\”进行转义 如:如变量$str=$_POST["str"];的值为:bb' or 1='1.通过addslashes()函数过滤后会变为:bb\' or 1=\'1: 2