我有一个数据库表,两个列的保存方式不同。
id title description
-----------------------------------------------------------
1 Test - ñ <p>ñå</p>
正如您所看到的那样,标题正在按原样保存,并且没有进行任何编码。然而,描述保存为编码字符串(代表<p>ñå</p>
)。
我在网页上正确显示它们时遇到了一些麻烦。
到目前为止,这是我的方法:
echo $data['title'];
- 无效,显示为Test - ñ
。echo html_entity_decode($data['title'], ENT_QUOTES, "UTF-8");
- 仍无效,显示为Test - ñ
。echo html_entity_decode($data['title'], ENT_XML1, "UTF-8");
- 仍无效,显示为Test - ñ
。echo $data['description'];
- 只显示<p>ñå</p>
。echo html_entity_decode($data['description'], ENT_QUOTES, "UTF-8");
- 不起作用,只显示Test - ñ
。echo html_entity_decode($data['description'], ENT_XML1, "UTF-8");
- 此作品虽然我不确定为什么设置ENT_XML1
会修复说明中的问题而不是标题。无论如何,我对字符编码和HTML实体以及特殊字符并不是很了解。你能帮我解决这个问题,以便标题和描述都很好。我不确定我在这里做了哪些正确的步骤,但我只是尝试不同的解决方案组合。