PHP htmlentities 字符串函数
-
定义和用法
htmlentities - 将字符转换为 HTML 转义字符 -
版本支持
PHP4 PHP5 PHP7 支持 支持 支持 -
语法
htmlentities ( string $string [, int $flags = ENT_COMPAT | ENT_HTML401 [, string $encoding = ini_get("default_charset") [, bool $double_encode = true ]]] )
本函数各方面都和htmlspecialchars()一样, 除了htmlentities()会转换所有具有 HTML 实体的字符。如果要解码(反向操作),可以使用html_entity_decode()。 -
参数
参数 必需的 描述 string 是 输入的字符串 flags 否 以下一个或多个标志的位掩码,指定如何处理引号以及要使用的文档类型。 默认为ENT_COMPAT | ENT_HTML401。 - ENT_COMPAT 将转换双引号并单独留下单引号。
- ENT_QUOTES 将转换双引号和单引号。
- ENT_NOQUOTES 将双引号和单引号保留为未转换。
- ENT_HTML401 将代码处理为HTML 4.01。
- ENT_XML1 将代码处理为XML 1。
- ENT_XHTML 将代码处理为XHTML。
- ENT_HTML5 将代码处理为HTML 5。
encoding 否 定义转换字符时使用的编码的可选参数。如果省略,则编码的默认值因使用的PHP版本而异。 在PHP 5.6及更高版本中,default_charset配置选项用作默认值。 PHP 5.4和5.5将使用UTF-8作为默认值。 早期版本的PHP使用ISO-8859-1。尽管此参数在技术上是可选的,但如果您使用的是PHP 5.5或更早版本,或者如果您的default_charset配置选项可能针对给定输入设置不正确,则强烈建议您为代码指定正确的值。 double_encode 否 关闭 double_encode 时,PHP 不会转换现有的 HTML 实体, 默认是全部转换。 encoding支持的字符编码:字符集 别名 描述 ISO-8859-1 ISO8859-1 西欧,Latin-1 ISO-8859-5 ISO8859-5 Little used cyrillic charset (Latin/Cyrillic). ISO-8859-15 ISO8859-15 西欧,Latin-9。增加欧元符号,法语和芬兰语字母在 Latin-1(ISO-8859-1) 中缺失。 UTF-8 ASCII 兼容的多字节 8 位 Unicode。 cp866 ibm866, 866 DOS 特有的西里尔编码。本字符集在 4.3.2 版本中得到支持。 cp1251 Windows-1251, win-1251, 1251 Windows 特有的西里尔编码。本字符集在 4.3.2 版本中得到支持。 cp1252 Windows-1252, 1252 Windows 特有的西欧编码。 KOI8-R koi8-ru, koi8r 俄语。本字符集在 4.3.2 版本中得到支持。 BIG5 950 繁体中文,主要用于中国台湾省。 GB2312 936 简体中文,中国国家标准字符集。 BIG5-HKSCS 繁体中文,附带香港扩展的 Big5 字符集。 Shift_JIS SJIS, 932 日语 EUC-JP EUCJP 日语 MacRoman Mac OS 使用的字符串。 '' 空字符串按此顺序激活脚本编码(Zend multibyte),default_charset和当前语言环境(请参阅nl_langinfo()和setlocale())的检测。 不建议。 注意: 其他字符集没有认可。将会使用默认编码并抛出异常。
-
返回值
返回编码后的字符。如果指定的编码 encoding 里, string 包含了无效的代码单元序列, 没有设置 ENT_IGNORE 或者 ENT_SUBSTITUTE 标记的情况下,会返回空字符串。 -
示例
尝试一下<?php $str = "A 'quote' is bold"; // 输出: A 'quote' is <b>bold</b> echo htmlentities($str); // 输出: A 'quote' is <b>bold</b> echo htmlentities($str, ENT_QUOTES); ?>
-
相关函数
html_entity_decode() - 将HTML实体转换为相应的字符get_html_translation_table() - 返回使用 htmlspecialchars 和 htmlentities 后的转换表htmlspecialchars() - 将特殊字符转换为 HTML 实体nl2br() - 在字符串所有新行之前插入 HTML 换行标记urlencode() - 编码 URL 字符串官方参考:》》》》》