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 相关文章推荐
3种平台下安装php4经验点滴
Oct 09 PHP
简单示例AJAX结合PHP代码实现登录效果代码
Jul 25 PHP
php使用Smarty的相关注意事项及访问变量的几种方式
Dec 08 PHP
PHP测试程序运行时间的类
Feb 05 PHP
PHP中shuffle数组值随便排序函数用法
Nov 21 PHP
php生成唯一数字id的方法汇总
Nov 18 PHP
CI框架出现mysql数据库连接资源无法释放的解决方法
May 17 PHP
thinkphp验证码的实现(form、ajax实现验证)
Jul 28 PHP
Thinkphp框架开发移动端接口(2)
Aug 18 PHP
PHP+Ajax实现的博客文章添加类别功能示例
Mar 29 PHP
Laravel框架Eloquent ORM简介、模型建立及查询数据操作详解
Dec 04 PHP
利用PHP计算有多少小于当前数字的数字方法示例
Aug 26 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实现文件编码批量转换
2014/03/10 PHP
学习php设计模式 php实现观察者模式(Observer)
2015/12/09 PHP
浅谈php处理后端&amp;接口访问超时的解决方法
2016/10/29 PHP
thinkPHP多表查询及分页功能实现方法示例
2017/07/03 PHP
laravel通过创建自定义artisan make命令来新建类文件详解
2017/08/17 PHP
关于laravel 日志写入失败问题汇总
2019/10/17 PHP
PHP实用小技巧之调用录像的方法
2019/12/05 PHP
JavaScript中join()方法的使用简介
2015/06/09 Javascript
Jquery效果大全之制作电脑健康体检得分特效附源码下载
2015/11/02 Javascript
浅析AMD CMD CommonJS规范--javascript模块化加载学习心得总结
2016/03/16 Javascript
bootstrap-table组合表头的实现方法
2017/09/07 Javascript
WebStorm ES6 语法支持设置&amp;babel使用及自动编译(详解)
2017/09/08 Javascript
详解vue-cli 接口代理配置
2017/12/13 Javascript
angularjs获取到My97DatePicker选中的值方法
2018/10/02 Javascript
vue input输入框关键字筛选检索列表数据展示
2020/10/26 Javascript
npm qs模块使用详解
2020/02/07 Javascript
vue使用微信扫一扫功能的实现代码
2020/04/11 Javascript
python简单的函数定义和用法实例
2015/05/07 Python
Python设计模式编程中Adapter适配器模式的使用实例
2016/03/02 Python
Python 爬虫学习笔记之多线程爬虫
2016/09/21 Python
一文总结学习Python的14张思维导图
2017/10/17 Python
PyQt5实现下载进度条效果
2018/04/19 Python
python opencv读mp4视频的实例
2018/12/07 Python
Python Numpy,mask图像的生成详解
2020/02/19 Python
Python无损压缩图片的示例代码
2020/08/06 Python
python eventlet绿化和patch原理
2020/11/21 Python
AJax面试题
2014/11/25 面试题
普师专业个人自荐信范文
2013/11/26 职场文书
《最大的麦穗》教学反思
2014/04/17 职场文书
关于教师节的演讲稿
2014/09/04 职场文书
八项规定自查自纠报告及整改措施
2014/10/26 职场文书
幸福家庭事迹材料
2014/12/20 职场文书
2015学校师德师风工作总结
2015/04/22 职场文书
电影地道战观后感
2015/06/04 职场文书
解决vue中provide inject的响应式监听
2022/04/19 Vue.js
Elasticsearch6.2服务器升配后的bug(避坑指南)
2022/09/23 Servers