PHP:如何将 ASCII 转换为 HTML 或如何解码字符串

Posted

技术标签:

【中文标题】PHP:如何将 ASCII 转换为 HTML 或如何解码字符串【英文标题】:PHP: How to convert ASCII to HTML or how to decode string 【发布时间】:2014-09-15 11:41:50 【问题描述】:

我有一个数据库表 (SQL Server 2008),其中的表包含一些 ASCII 编码字符(格式为 nvarchar(max) )。

通常浏览器会自动将这些内容转换为 html,但我使用的 jQuery 插件无法读取这些内容并且需要 HTML 格式的内容。我正在使用 php 将我的内容传递给这个插件。

在 PHP 中有没有办法将这些字符串手动转换为 HTML ?

示例 - 数据库内容:

<p>Some sample text with <strong>HTML</strong></p>

示例 - 插件所需的输出:

<p>Some sample text with <strong>HTML</strong></p>

我尝试自己寻找解决方案,但似乎有不同的方法可用,我不确定这里是否正确。

【问题讨论】:

那么,有不同的方法可供选择 - 为什么不测试它们,看看哪一种能给你带来正确的结果?我真的没有看到对这个问题进行任何研究。 【参考方案1】:

你可以试试html_entity_decode();

html_entity_decode('string', ENT_QUOTES, 'UTF-8');

【讨论】:

非常感谢 - 这看起来很棒! 你能告诉我这里和其他答案有什么不同吗? 谢谢 - 你能说一下这里的 ENT_QUOTES 和 ENT_COMPAT 有什么区别吗? ENT_COMPAT,将转换双引号并保留单引号。 ENT_QUOTES 将转换双引号和单引号【参考方案2】:

用这个,

echo html_entity_decode($string, ENT_COMPAT, 'UTF-8');

【讨论】:

非常感谢 - 这也很棒。你能告诉我这里与其他答案相比有什么区别吗? Nohing...这里 $string 是 php 变量,如果您愿意,您可以在其中设置您的字符串,如 $string = '&amp;lt;p&amp;gt;Some sample text with &amp;lt;strong&amp;gt;HTML&amp;lt;/strong&amp;gt;&amp;lt;/p&amp;gt;'; 以防长字符串... 谢谢 - 我的意思是在 ENT_QUOTES 和 ENT_COMPAT 之间。 ENT_COMPAT - 只转换双引号和 ENT_QUOTES - 转换双引号和单引号

以上是关于PHP:如何将 ASCII 转换为 HTML 或如何解码字符串的主要内容,如果未能解决你的问题,请参考以下文章

将 Javascript UTF-8 转换为 ASCII(如 PHP 中的 Iconv('UTF-8', 'ASCII//TRANSLIT', $string) )

PHP 将字符串转换为ASCII

PHP 将 ASCII 码转为字符串,字符串转换 ASCII 码

PHP 将JPG转换为RGB彩色ASCII

jsp中如何将US7ASCII 转换为GBK字符

如何将扩展 ascii 转换为 System.String?