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版本号
Oct 09 PHP
php将时间差转换为字符串提示
Sep 07 PHP
PHP rawurlencode与urlencode函数的深入分析
Jun 08 PHP
探讨php中防止SQL注入最好的方法是什么
Jun 10 PHP
一个图片地址分解程序(用于PHP小偷程序)
Aug 23 PHP
详解PHP对数组的定义以及数组的创建方法
Nov 27 PHP
在PHP站点的页面上添加Facebook评论插件的实例教程
Jan 08 PHP
PHP批量去除BOM头内容信息代码
Mar 11 PHP
PHP Smarty模版简单使用方法
Mar 30 PHP
php获取文件名称和扩展名的方法
Feb 07 PHP
ThinkPHP中Widget扩展的两种写法及调用方法详解
May 04 PHP
php的命名空间与自动加载实现方法
Aug 25 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日历程序
2006/12/06 PHP
允许phpmyadmin空密码登录的配置方法
2011/05/29 PHP
PHP使用range协议实现输出文件断点续传代码实例
2014/07/04 PHP
php获取网页里所有图片并存入数组的方法
2015/04/06 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
2017/04/19 PHP
Dom 结点创建 基础知识
2011/10/01 Javascript
jquery ajax中使用jsonp的限制解决方法
2013/11/22 Javascript
JS window对象的top、parent、opener含义介绍
2013/12/03 Javascript
js实现防止被iframe的方法
2015/07/03 Javascript
jquery.fastLiveFilter.js实现输入自动过滤的方法
2015/08/11 Javascript
jQuery鼠标事件汇总
2015/08/30 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
2016/05/25 Javascript
Angularjs---项目搭建图文教程
2016/07/08 Javascript
Angularjs处理页面闪烁的解决方法
2017/03/09 Javascript
JavaScript 完成注册页面表单校验的实例
2017/08/19 Javascript
JavaScript类数组对象转换为数组对象的方法实例分析
2018/07/24 Javascript
vue移动端屏幕适配详解
2019/04/30 Javascript
Vue项目中ESlint规范示例代码
2019/07/04 Javascript
JavaScript设计模型Iterator实例解析
2020/01/22 Javascript
jQuery+ThinkPHP实现图片上传
2020/07/23 jQuery
Python实现字符串格式化的方法小结
2017/02/20 Python
Python开发的HTTP库requests详解
2017/08/29 Python
Python内置函数reversed()用法分析
2018/03/20 Python
python 接口返回的json字符串实例
2018/03/27 Python
python利用opencv实现SIFT特征提取与匹配
2020/03/05 Python
Python基于Hypothesis测试库生成测试数据
2020/04/29 Python
通过Django Admin+HttpRunner1.5.6实现简易接口测试平台
2020/11/11 Python
Python关于拓扑排序知识点讲解
2021/01/04 Python
高中军训感想300字
2014/03/04 职场文书
婚礼主持词
2014/03/13 职场文书
大连星海广场导游词
2015/02/10 职场文书
学校学期工作总结
2015/08/13 职场文书
暑假生活随笔
2015/08/15 职场文书
小学四年级班主任工作经验交流材料
2015/11/02 职场文书
PostgreSQL数据库去除重复数据和运算符的基本查询操作
2022/04/12 PostgreSQL
HttpClient实现表单提交上传文件
2022/08/14 Java/Android