php htmlentities()函数的定义和用法


Posted in PHP onMay 13, 2016

php htmlentities() 函数把字符转换为 HTML 实体,本文章向码农介绍php htmlentities() 函数基本使用方法和实例介绍,需要的码农可以参考一下。

定义和用法

htmlentities() 函数把字符转换为 HTML 实体。

提示:要把 HTML 实体转换回字符,请使用 html_entity_decode() 函数。

提示:请使用 get_html_translation_table() 函数来返回 htmlentities() 使用的翻译表。

语法

htmlentities(string,flags,character-set,double_encode)

参数 描述
string 必需。规定要转换的字符串。
flags 可选。规定如何处理引号、无效的编码以及使用哪种文档类型。 可用的引号类型: ENT_COMPAT - 默认。仅编码双引号。 ENT_QUOTES - 编码双引号和单引号。 ENT_NOQUOTES - 不编码任何引号。 无效的编码: ENT_IGNORE - 忽略无效的编码,而不是让函数返回一个空的字符串。应尽量避免,因为这可能对安全性有影响。 ENT_SUBSTITUTE - 把无效的编码替代成一个指定的带有 Unicode 替代字符 U+FFFD(UTF-8)或者 FFFD; 的字符,而不是返回一个空的字符串。 ENT_DISALLOWED - 把指定文档类型中的无效代码点替代成 Unicode 替代字符 U+FFFD(UTF-8)或者 FFFD;。 规定使用的文档类型的附加 flags: ENT_HTML401 - 默认。作为 HTML 4.01 处理代码。 ENT_HTML5 - 作为 HTML 5 处理代码。 ENT_XML1 - 作为 XML 1 处理代码。 ENT_XHTML - 作为 XHTML 处理代码。
character-set 可选。一个规定了要使用的字符集的字符串。 允许的值: UTF-8 - 默认。ASCII 兼容多字节的 8 位 Unicode ISO-8859-1 - 西欧 ISO-8859-15 - 西欧(加入欧元符号 + ISO-8859-1 中丢失的法语和芬兰语字母) cp866 - DOS 专用 Cyrillic 字符集 cp1251 - Windows 专用 Cyrillic 字符集 cp1252 - Windows 专用西欧字符集 KOI8-R - 俄语 BIG5 - 繁体中文,主要在台湾使用 GB2312 - 简体中文,国家标准字符集 BIG5-HKSCS - 带香港扩展的 Big5 Shift_JIS - 日语 EUC-JP - 日语 MacRoman - Mac 操作系统使用的字符集 注释:在 PHP 5.4 之前的版本,无法被识别的字符集将被忽略并由 ISO-8859-1 替代。自 PHP 5.4 起,无法被识别的字符集将被忽略并由 UTF-8 替代。
double_encode 可选。布尔值,规定是否编码已存在的 HTML 实体。 TRUE - 默认。将对每个实体进行转换。 FALSE - 不会对已存在的 HTML 实体进行编码。

 

技术细节

返回值: 返回被转换的字符串。 如果 string 包含无效的编码,则返回一个空的字符串,除非设置了 ENT_IGNORE 或者 ENT_SUBSTITUTE 标志。
PHP 版本: 4+
更新日志: 在 PHP 5 中,character-set 参数的默认值改为 UTF-8。 在 PHP 5.4 中,新增了:ENT_SUBSTITUTE、ENT_DISALLOWED、ENT_HTML401、ENT_HTML5、ENT_XML1 和 ENT_XHTML。 在 PHP 5.3 中,新增了 ENT_IGNORE。 在 PHP 5.2.3 中,新增了 double_encode 参数。 在 PHP 4.1 中,新增了 character-set 参数。

 实例例子 1

把字符转换为 HTML 实体:

<?php 
$str = "Bill & 'Steve'"; 
echo htmlentities($str, ENT_COMPAT); // 只转换双引号 
echo "<br>"; 
echo htmlentities($str, ENT_QUOTES); // 转换双引号和单引号 
echo "<br>"; 
echo htmlentities($str, ENT_NOQUOTES); // 不转换任何引号 
?>

以上代码的 HTML 输出如下(查看源代码):

<!DOCTYPE html> 
<html> 
<body> 
Bill & 'Steve'<br> 
Bill & 'Tarzan'<br> 
Bill & 'Steve'
</body> 
</html>

以上代码的浏览器输出:

Bill & 'Steve'
Bill & 'Steve'
Bill & 'Steve'

例子 2

通过使用西欧字符集,把一些字符转换为 HTML 实体:

<?php 
$str = "My name is ?yvind ?sane. I'm Norwegian."; 
echo htmlentities($str, ENT_QUOTES, "ISO-8859-1"); 
// Will only convert double quotes (not single quotes), and uses the character-set Western European 
?>

以上代码的 HTML 输出如下(查看源代码):

<!DOCTYPE html> 
<html> 
<body> 
My name is Øyvind Åsane. I'm Norwegian. 
</body> 
</html>

以上代码的浏览器输出:

My name is ?yvind ?sane. I'm Norwegian.

以上这篇php htmlentities()函数的定义和用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php中的数组操作函数整理
Aug 18 PHP
php下批量挂马和批量清马代码
Feb 27 PHP
PHP运行时强制显示出错信息的代码
Apr 20 PHP
PHP 多维数组的排序问题 根据二维数组中某个项排序
Nov 09 PHP
php二维数组排序方法(array_multisort usort)
Dec 25 PHP
PHP中exec函数和shell_exec函数的区别
Aug 20 PHP
什么情况下可以不写PHP的闭合标签“?&gt;”
Aug 28 PHP
PHP类的声明与实例化及构造方法与析构方法详解
Jan 26 PHP
PHP安全下载文件的方法
Apr 07 PHP
php使用pclzip类实现文件压缩的方法(附pclzip类下载地址)
Apr 30 PHP
thinkphp在php7环境下提示Cannot use ‘String’ as class name as it is reserved的解决方法
Sep 30 PHP
thinkphp5.0整合phpsocketio完整攻略(绕坑)
Oct 12 PHP
LINUX下PHP程序实现WORD文件转化为PDF文件的方法
May 13 #PHP
php调用自己java程序的方法详解
May 13 #PHP
Linux php 中文乱码的快速解决方法
May 13 #PHP
PHP 返回13位时间戳的实现代码
May 13 #PHP
php同时使用session和cookie来保存用户登录信息的实现代码
May 13 #PHP
PHP根据session与cookie用户登录状态操作类的代码
May 13 #PHP
php用户登录之cookie信息安全分析
May 13 #PHP
You might like
劣质的PHP代码简化
2010/02/08 PHP
php中的ini配置原理详解
2014/10/14 PHP
PHP模板引擎smarty详细介绍
2015/05/26 PHP
PHP判断上传文件类型的解决办法
2015/10/20 PHP
php简单统计中文个数的方法
2016/09/30 PHP
PHP实现批量删除(封装)
2017/04/28 PHP
javascript Ext JS 状态默认存储时间
2009/02/15 Javascript
Javascript remove 自定义数组删除方法
2009/10/20 Javascript
提示$ is not defined错误分析及解决
2013/04/09 Javascript
鼠标移入移出事件改变图片的分辨率的两种方法
2013/12/17 Javascript
javascript 密码框防止用户粘贴和复制的实现代码
2014/02/17 Javascript
js function定义函数的几种不错方法
2014/02/27 Javascript
实践中学习AngularJS表单
2016/03/21 Javascript
JS与jQuery实现子窗口获取父窗口元素值的方法
2017/04/17 jQuery
JavaScript手写数组的常用函数总结
2020/11/22 Javascript
Python 闭包的使用方法
2017/09/07 Python
基于Python代码编辑器的选用(详解)
2017/09/13 Python
解决已经安装requests,却依然提示No module named requests问题
2018/05/18 Python
详解Python3中ceil()函数用法
2019/02/19 Python
使用Python将Mysql的查询数据导出到文件的方法
2019/02/25 Python
Django的用户模块与权限系统的示例代码
2019/07/24 Python
Python 脚本的三种执行方式小结
2019/12/21 Python
python实现测试工具(二)——简单的ui测试工具
2020/10/19 Python
CSS3 三维变形实现立体方块特效源码
2016/12/15 HTML / CSS
localStorage的过期时间设置的方法详解
2018/11/26 HTML / CSS
Python中如何定义一个函数
2016/09/06 面试题
群众路线批评与自我批评
2014/02/06 职场文书
员工激励培训演讲稿
2014/09/16 职场文书
2015年幼儿园教研活动总结
2015/03/25 职场文书
公司员工违纪检讨书
2015/05/05 职场文书
2015年度残疾人工作总结
2015/05/14 职场文书
离婚代理词范文
2015/05/23 职场文书
关爱空巢老人感想
2015/08/11 职场文书
文明和谐家庭事迹材料(2016精选版)
2016/02/29 职场文书
Python WSGI 规范简介
2021/04/11 Python
SpringBoot2零基础到精通之数据与页面响应
2022/03/22 Java/Android