我从Unicode的XML文件中接收数据。用latin1_general_ci编码的字段在MySQL DB中插入/更新此数据的最佳正确方法是什么?

谢谢!

最佳答案

Nitpick:latin1_general_ci是排序规则-排序顺序。您正在使用的编码-CHARACTER SETlatin1

从字符串中初始化Unicode字符。在将XML文件解析为值之后,然后将这些值存储在数据库列中,然后执行此操作。例如,在存储文本字符串之前,您需要将⇨(箭头)变成⇨

$outstr = htmlentities ( $instr, ENT_NOQUOTES, ISO8859-1);


您需要阅读htmlentities,因为它有很多选择。 http://php.net/manual/en/function.htmlentities.php

当从数据库中检索这些值时,可以将它们直接发送到了解实体化项目的浏览器,也可以使用html_entity_decode()撤消实体化操作。

10-04 10:27
查看更多