我正在修改我的网站以使用 UTF-8 编码,这被证明有点痛苦。这是我到目前为止所做的:
1)<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
2)mysql_set_charset("utf8");
3)设置数据库、表、列的字符集为utf8
现在我在一个字段中有一些数据,其内容是(确切的形式):
<p>Tom & Jerry £5</p>
将此数据输出到页面后,一切看起来都是正确的。但是,在进行 HTML 验证检查时,它在&
符号上失败,因为它没有被更改为&
.
现在我尝试通过使用来解决这个问题,htmlentities()
但这会编码所有内容,包括 HTMLP
标记的尖括号。所以它没有正确显示。此外,英镑符号出现在其前面有一个奇怪的字符。
我的问题是,我是否将数据正确存储在数据库表中?如果是这样,我需要做些什么来确保所有内容都显示并验证正确?