Home > Backend Development > PHP Problem > How to escape html entities into characters in php

How to escape html entities into characters in php

青灯夜游
Release: 2023-03-17 18:02:01
Original
4925 people have browsed it
<blockquote><p>转义方法:1、用htmlspecialchars_decode()函数,可将5个预定义的HTML实体转为字符,语法“htmlspecialchars_decode(string,flags)”;2、用html_entity_decode()函数,可将指定HTML实体转为字符,语法“html_entity_decode(string,flags,character-set)”。</p></blockquote> <p><img src="https://img.php.cn/upload/article/000/000/024/63b9312f21be6408.jpg" alt="How to escape html entities into characters in php" ></p> <p>本教程操作环境:windows7系统、PHP8版、DELL G3电脑</p> <p>php提供了 两个函数来将html实体转义为字符</p> <ul style="list-style-type: disc;"> <li><p>htmlspecialchars_decode()函数</p></li> <li><p>html_entity_decode()函数</p></li> </ul> <p>下面就来了解一下这两个函数。</p> <p><strong>方法1:使用htmlspecialchars_decode()函数将html实体转义为字符</strong></p> <p>htmlspecialchars_decode() 函数把一些预定义的 HTML 实体转换为字符。</p> <p>会被解码的 HTML 实体是:</p> <ul style="list-style-type: disc;"> <li><p><code>&</code> 解码成 & (和号)</p></li> <li><p><code>"</code> 解码成 " (双引号)</p></li> <li><p><code>'</code> 解码成 <code>'</code> (单引号)</p></li> <li><p><code><</code> 解码成 <code><</code> (小于)</p></li><li><p><code>></code> 解码成 <code>></code> (大于)</p></li> </ul> <p>语法:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:js;toolbar:false">htmlspecialchars_decode(string,flags)</pre><div class="contentsignin">Copy after login</div></div><table class="reference notranslate"><tbody><tr class="firstRow"><th width="20%">参数</th><th width="80%">描述</th></tr><tr><td><em>string</em></td><td>必需。规定要解码的字符串。</td></tr><tr><td><em>flags</em></td><td>可选。规定如何处理引号以及使用哪种文档类型。<p>可用的引号类型:</p><ul><li>ENT_COMPAT - 默认。仅解码双引号。</li><li>ENT_QUOTES - 解码双引号和单引号。</li><li>ENT_NOQUOTES - 不解码任何引号。</li></ul><p>规定使用的文档类型的附加 flags:</p><ul><li>ENT_HTML401 - 默认。作为 HTML 4.01 处理代码。</li><li>ENT_HTML5 - 作为 HTML 5 处理代码。</li><li>ENT_XML1 - 作为 XML 1 处理代码。</li><li>ENT_XHTML - 作为 XHTML 处理代码。</li></ul></td></tr></tbody></table><p>示例:把预定义的 HTML 实体 "<code><</code>"(小于)和 "<code>></code>"(大于)转换为字符:<br/></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">&lt;?php $str = &quot;This is some &lt;b&gt;bold&lt;/b&gt; text.&quot;; echo htmlspecialchars_decode($str); ?&gt;</pre><div class="contentsignin">Copy after login</div></div><p><img src="https://img.php.cn/upload/image/252/361/210/1673080636905307.png" title="1673080636905307.png" alt="How to escape html entities into characters in php"/></p><p>htmlspecialchars_decode() 函数只能转义5种HTML 实体,那么其他HTML 实体想要转义要怎么处理?可以使用html_entity_decode()函数。</p><p><strong>方法2:使用html_entity_decode()函数将html实体转义为字符</strong></p><p>html_entity_decode() 函数把 HTML 实体转换为字符。</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">html_entity_decode(string,flags,character-set)</pre><div class="contentsignin">Copy after login</div></div><table class="reference"><tbody><tr class="firstRow"><th width="20%">参数</th><th width="80%">描述</th></tr><tr><td><em>string</em></td><td>必需。规定要解码的字符串。</td></tr><tr><td><em>flags</em></td><td>可选。规定如何处理引号以及使用哪种文档类型。<p>可用的引号类型:</p><ul><li>ENT_COMPAT - 默认。仅解码双引号。</li><li>ENT_QUOTES - 解码双引号和单引号。</li><li>ENT_NOQUOTES - 不解码任何引号。</li></ul><p>规定使用的文档类型的附加 flags:</p><ul><li>ENT_HTML401 - 默认。作为 HTML 4.01 处理代码。</li><li>ENT_HTML5 - 作为 HTML 5 处理代码。</li><li>ENT_XML1 - 作为 XML 1 处理代码。</li><li>ENT_XHTML - 作为 XHTML 处理代码。</li></ul></td></tr><tr><td><em>character-set</em></td><td>可选。一个规定了要使用的字符集的字符串。<p>允许的值:</p><ul><li>UTF-8 - 默认。ASCII 兼容多字节的 8 位 Unicode</li><li>ISO-8859-1 - 西欧</li><li>ISO-8859-15 - 西欧(加入欧元符号 + ISO-8859-1 中丢失的法语和芬兰语字母)</li><li>cp866 - DOS 专用 Cyrillic 字符集</li><li>cp1251 - Windows 专用 Cyrillic 字符集</li><li>cp1252 - Windows 专用西欧字符集</li><li>KOI8-R - 俄语</li><li>BIG5 - 繁体中文,主要在台湾使用</li><li>GB2312 - 简体中文,国家标准字符集</li><li>BIG5-HKSCS - 带香港扩展的 Big5</li><li>Shift_JIS - 日语</li><li>EUC-JP - 日语</li><li>MacRoman - Mac 操作系统使用的字符集</li></ul><p><strong>注释:</strong>在 PHP 5.4 之前的版本,无法被识别的字符集将被忽略并由 ISO-8859-1 替代。自 PHP 5.4 起,无法被识别的字符集将被忽略并由 UTF-8 替代。</p></td></tr></tbody></table><p>示例:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">&lt;?php $str = &quot;&lt;&amp;copy; W3CS&amp;ccedil;h&amp;deg;&amp;deg;&amp;brvbar;&amp;sect;&gt;&quot;; echo html_entity_decode($str); ?&gt;</pre><div class="contentsignin">Copy after login</div></div><p>输出:<br/></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">&lt;© W3CSçh°°¦§&gt;</pre><div class="contentsignin">Copy after login</div></div><p>推荐学习:《<a href="//m.sbmmt.com/course/list/29/type/2.html" target="_blank">PHP视频教程</a>》</p>

The above is the detailed content of How to escape html entities into characters in php. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template