php htmlspecialchars()与shtmlspecialchars()函数的深入分析


Posted in PHP onJune 05, 2013

定义和用法
htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体。

预定义的字符是:
•& (和号) 成为 &
•" (双引号) 成为 "
•' (单引号) 成为 '
•< (小于) 成为 <
•> (大于) 成为 >
语法
htmlspecialchars(string,quotestyle,character-set)

参数 描述
string 必需。规定要转换的字符串。
quotestyle 可选。规定如何编码单引号和双引号。 ENT_COMPAT - 默认。仅编码双引号。 ENT_QUOTES - 编码双引号和单引号。 ENT_NOQUOTES - 不编码任何引号。
character-set 可选。字符串值,规定要使用的字符集。 ISO-8859-1 - 默认。西欧。 ISO-8859-15 - 西欧(增加 Euro 符号以及法语、芬兰语字母)。 UTF-8 - ASCII 兼容多字节 8 比特 Unicode cp866 - DOS 专用 Cyrillic 字符集 cp1251 - Windows 专用 Cyrillic 字符集 cp1252 - Windows 专用西欧字符集 KOI8-R - 俄语 GB2312 - 简体中文,国家标准字符集 BIG5 - 繁体中文 BIG5-HKSCS - Big5 香港扩展 Shift_JIS - 日语 EUC-JP - 日语

提示和注释
提示:
无法被识别的字符集将被忽略,并由 ISO-8859-1 代替。
例子
<html>
    <body>
    <?php
        $str = "John & 'Adams'";
        echo htmlspecialchars($str, ENT_COMPAT);
        echo "<br />";
        echo htmlspecialchars($str, ENT_QUOTES);
        echo "<br />";
        echo htmlspecialchars($str, ENT_NOQUOTES);
    ?>
    </body>
</html>

浏览器输出:
John & 'Adams'
John & 'Adams'
John & 'Adams'

如果在浏览器中查看源代码,会看到这些 HTML:
<html>
    <body>
    John & 'Adams'<br />John & 'Adams'<br />John & 'Adams'    </body>
</html>

=======================================================================
shtmlspecialchars() 函数正好相反
PHP 相关文章推荐
php中使用DOM类读取XML文件的实现代码
Dec 14 PHP
PHP 常用数组内部函数(Array Functions)介绍
Jun 05 PHP
php 判断字符串中是否包含html标签
Feb 17 PHP
PHP获取栏目的所有子级和孙级栏目的ID号示例
Apr 01 PHP
PHP生成不重复标识符的方法
Nov 21 PHP
smarty内置函数foreach用法实例
Jan 22 PHP
php简单获取文件扩展名的方法
Mar 24 PHP
PHP传值到不同页面的三种常见方式及php和html之间传值问题
Nov 19 PHP
php制作简单模版引擎
Apr 07 PHP
php array_multisort 对数组进行排序详解及实例代码
Oct 27 PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
Oct 26 PHP
PHP实现的curl批量请求操作示例
Jun 06 PHP
深入php define()函数以及defined()函数的用法详解
Jun 05 #PHP
基于PHP array数组的教程详解
Jun 05 #PHP
深入php list()函数的详解
Jun 05 #PHP
深入php var_dump()函数的详解
Jun 05 #PHP
php数组(array)输出的三种形式详解
Jun 05 #PHP
php set_time_limit()函数的使用详解
Jun 05 #PHP
基于PHP文件操作的详解
Jun 05 #PHP
You might like
PHP循环语句笔记(foreach,list)
2011/11/29 PHP
PHP中的cookie不用刷新就生效的方法
2012/02/04 PHP
windows7下php开发环境搭建图文教程
2015/01/06 PHP
PHP中大于2038年时间戳的问题处理方案
2015/03/03 PHP
用javascript实现的激活输入框后隐藏初始内容
2007/06/29 Javascript
jquery 插件开发 extjs中的extend用法小结
2013/01/04 Javascript
jQuery中Form相关知识汇总
2015/01/06 Javascript
js实现在网页上简单显示时间的方法
2015/03/02 Javascript
详解JavaScript的流程控制语句
2015/11/30 Javascript
基于jQuery实现点击弹出层实例代码
2016/01/01 Javascript
javascript设置和获取cookie的方法实例详解
2016/01/05 Javascript
浅谈jquery高级方法描述与应用
2016/10/04 Javascript
jQuery EasyUI tree 使用拖拽时遇到的错误小结
2016/10/10 Javascript
angularjs 表单密码验证自定义指令实现代码
2016/10/27 Javascript
nodejs入门教程五:连接数据库的方法分析
2017/04/24 NodeJs
js字符限制(字符截取) 一个中文汉字算两个字符
2017/09/12 Javascript
利用js给datalist或select动态添加option选项的方法
2018/01/25 Javascript
浅谈在react中如何实现扫码枪输入
2018/07/04 Javascript
[01:05:24]Ti4 冒泡赛第二天 iG vs NEWBEE 3
2014/07/15 DOTA
python thread 并发且顺序运行示例
2009/04/09 Python
Python中实现的RC4算法
2015/02/14 Python
Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
2017/08/31 Python
Python 实现一个手机号码获取妹子名字的功能
2019/09/25 Python
python 图像的离散傅立叶变换实例
2020/01/02 Python
Python计算公交发车时间的完整代码
2020/02/12 Python
UNIONBAY官网:美国青少年服装品牌
2019/03/26 全球购物
工商管理实习生自我鉴定范文
2013/12/18 职场文书
向领导表决心的话
2014/03/11 职场文书
教师职位说明书
2014/07/29 职场文书
社区娱乐活动方案
2014/08/21 职场文书
幼儿园教师节演讲稿
2014/09/03 职场文书
海南召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
《绝招》教学反思
2016/02/20 职场文书
教师节作文之小学四年级
2019/09/03 职场文书
springboot拦截器无法注入redisTemplate的解决方法
2021/06/27 Java/Android
Python制作春联的示例代码
2022/01/22 Python