我从 latin1 更改为 utf8。尽管各种文本都显示正常,但我注意到非英语字符作为奇怪的符号存储在数据库中。我花了一天时间试图解决这个问题,最后非英文字符在数据库中显示为非英文字符,并在浏览器中显示相同。但是我注意到我看到撇号存储为 '
,感叹号存储为 !
。这是正常的,还是它们应该显示为 ' 和 !而不是在数据库中?如果是这样,我需要做什么才能解决这个问题?
最佳答案
这实际上取决于您打算如何处理数据库的内容。如果您的不变量是“数据库的内容已被清理并且可以直接放置在网页中而无需进一步验证/清理”,那么让 &和数据库中的其他 html 实体非常有意义。另一方面,如果您的数据库仅存储原始原始数据,并且您打算在以 HTML 代码显示之前对其进行处理/清理,那么您可能应该将这些实体替换为使用 UTF 编码的原始字符-8。因此,这实际上取决于您如何解释数据库内容。
关于mysql - mysql数据库中存储撇号、感叹号等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2796672/