## 定义和用法
htmlentities() 函数把字符转换为 HTML 实体。
提示:要把 HTML 实体转换回字符,请使用[html\_entity\_decode()](https://www.w3school.com.cn/php/func_string_html_entity_decode.asp "PHP html_entity_decode() 函数")函数。
提示:请使用[get\_html\_translation\_table()](https://www.w3school.com.cn/php/func_string_get_html_translation_table.asp "PHP get_html_translation_table() 函数")函数来返回 htmlentities() 使用的翻译表。
## 实例
把字符转换为 HTML 实体:
~~~
$str = " W3S?h????>";
echo htmlentities($str);
?>
~~~
以上代码的 HTML 输出如下(查看源代码):
~~~
~~~
以上代码的浏览器输出:
~~~
W3S?h????>
~~~
## 更多实例
### 例子 1
把字符转换为 HTML 实体:
~~~
$str = "Bill & 'Steve'";
echo htmlentities($str, ENT_COMPAT); // 只转换双引号
echo "
";
echo htmlentities($str, ENT_QUOTES); // 转换双引号和单引号
echo "
";
echo htmlentities($str, ENT_NOQUOTES); // 不转换任何引号
?>
~~~
以上代码的 HTML 输出如下(查看源代码):
~~~
Bill & 'Steve'
Bill & 'Tarzan'
Bill & 'Steve'
~~~
以上代码的浏览器输出:
~~~
Bill & 'Steve'
Bill & 'Steve'
Bill & 'Steve'
~~~
### 例子 2
通过使用西欧字符集,把一些字符转换为 HTML 实体:
~~~
$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 输出如下(查看源代码):
~~~
My name is Øyvind Åsane. I'm Norwegian.
~~~
以上代码的浏览器输出:
~~~
My name is ?yvind ?sane. I'm Norwegian.
~~~