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读取文件内容的几种方法详解
Jun 26 PHP
php防止SQL注入详解及防范
Nov 12 PHP
PHP获取MAC地址的具体实例
Dec 13 PHP
Session的工作机制详解和安全性问题(PHP实例讲解)
Apr 10 PHP
PHP中使用FFMPEG获取视频缩略图和视频总时长实例
May 04 PHP
用 Composer构建自己的 PHP 框架之设计 MVC
Oct 30 PHP
Smarty使用自定义资源的方法
Aug 08 PHP
php图片水印添加、压缩、剪切的封装类实现
Apr 18 PHP
php版微信公众平台实现预约提交后发送email的方法
Sep 26 PHP
PHP实现防盗链的方法分析
Jul 25 PHP
PHP fclose函数用法总结
Feb 15 PHP
laravel 根据不同组织加载不同视图的实现
Oct 14 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
IIS下配置Php+Mysql+zend的图文教程
2006/12/08 PHP
php在线代理转向代码
2012/05/05 PHP
PHP将URL转换成短网址的算法分享
2016/09/13 PHP
PHP7匿名类用法分析
2016/09/26 PHP
thinkPHP5.0框架配置格式、加载解析与读取方法
2017/03/17 PHP
PHP SESSION机制的理解与实例
2019/03/22 PHP
10个实用的脚本代码工具
2010/05/04 Javascript
Javascript Request获取请求参数如何实现
2012/11/28 Javascript
基于JQuery 选择器使用说明介绍
2013/04/18 Javascript
图片动画横条广告带上下滚动可自定义图片、链接等等
2013/10/20 Javascript
jQuery分别获取选中的复选框值的示例
2014/06/17 Javascript
JavaScript数组函数unshift、shift、pop、push使用实例
2014/08/27 Javascript
$(&quot;&quot;).click与onclick的区别示例介绍
2014/09/25 Javascript
一看就懂:jsonp详解
2015/06/01 Javascript
js实现超简单的展开、折叠目录代码
2015/08/28 Javascript
用户代理字符串userAgent可实现的四个识别
2015/09/20 Javascript
利用jQuery实现CheckBox全选/全不选/反选的简单代码
2016/05/31 Javascript
js禁止浏览器的回退事件
2017/04/20 Javascript
微信小程序图片横向左右滑动案例
2017/05/19 Javascript
Node.js 基础教程之全局对象
2017/08/06 Javascript
vue中添加mp3音频文件的方法
2018/03/02 Javascript
vue select组件的使用与禁用实现代码
2018/04/10 Javascript
详解Vue开发微信H5微信分享签名失败问题解决方案
2018/08/09 Javascript
layer.msg()去掉默认时间,实现手动关闭的方法
2019/09/12 Javascript
node 标准输入流和输出流代码实例
2019/09/19 Javascript
Js Snowflake(雪花算法)生成随机ID的实现方法
2020/08/26 Javascript
[53:10]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs VG 第一场
2018/04/11 DOTA
[01:09:16]DOTA2-DPC中国联赛 正赛 SAG vs Dynasty BO3 第一场 1月25日
2021/03/11 DOTA
Python实现telnet服务器的方法
2015/07/10 Python
python利用正则表达式排除集合中字符的功能示例
2017/10/10 Python
Python 抓取微信公众号账号信息的方法
2019/06/14 Python
成人毕业生自我鉴定
2013/10/18 职场文书
人力资源管理专业自荐书
2014/07/07 职场文书
2015年五一劳动节活动总结
2015/02/09 职场文书
邮政营业员岗位职责
2015/04/14 职场文书
详解前端任务构建利器Gulp.js使用指南
2021/04/30 Javascript