gpt4 book ai didi

PHP DOMDocument 不会将 XML 字符串解析为 UTF-8

转载 作者:行者123 更新时间:2023-11-30 01:24:17 25 4
gpt4 key购买 nike

我正在尝试将 xml 格式的字符串解析为 DOMDocument。以下是我的代码:

mysql_connect("localhost", "MYUSERNAME", "MYPASSWORD") or die(mysql_error());
mysql_select_db("cmj_db") or die(mysql_error());

$data = mysql_query("SELECT article_id, html_data from articles where article_id=".$_GET["article_id"]) or die(mysql_error());
$dataArray = mysql_fetch_array($data);
echo 'article: ' . $dataArray['article_id'] . '<br />';

$doc = new DOMDocument;
$doc->loadXML(Encoding::toUTF8($dataArray['html_data']));

我收到错误:警告:DOMDocument::loadXML():输入不是正确的 UTF-8,请指示编码!字节:0x96 0x20 0x6E 0x6F

涉及到特殊字符,所以我需要UTF编码。当我单独回显字符串时,字符看起来很好。注意到这是一个很长的连续转换可能会有所帮助。我从 html 编码中转义了很多字符,然后将其导入到 mysql 表(使用 utf-9 字符集)。如何将此字符串转换为 unicode,以便我可以将其解析为 XML?

谢谢

最佳答案

你尝试过mb_convert_encoding()吗? mb_convert_encoding()

如果我没理解错的话,您的 XML 编码是 UTF-9,而您需要 UTF-8?

mb_convert_encoding($dataArray['html_data'], 'UTF-8', 'UTF-9')

关于PHP DOMDocument 不会将 XML 字符串解析为 UTF-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18195038/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com