导入WordPress时出现字符编码问题

时间:2014-06-20 09:20:07

标签: php wordpress drupal character-encoding

我创建了一个将内容从Drupal迁移到WordPress的例程。基本上我是在PHP脚本中查询Drupal数据库,然后使用wp_insert_post()将该数据添加到WordPress数据库中。

我遇到了字符编码的问题,在我将Drupal内容插入WordPress后,某些字符会导致字符串的其余部分被剥离。

举个例子:

<strong>The following text will stop at the back tick’, this text will get stripped out</strong><br />

导入时,后面的勾选后的任何内容都会删除,如下:

<strong>The following text will stop at the back tick

为了解决这个问题,我试图改变字符编码,但是这会删除后面的勾号,类似空格的字符,以及像£符号这样的字符。

$html = iconv('utf-8', 'us-ascii', $html);

我还尝试使用此功能//TRANSLIT//IGNORE,但它仍然可以完全删除这些字符或在第一个问题时停止。

任何人都可以建议将内容转换为WordPress可以接受的格式,但不删除这些字符,而是将它们转换为替代字符。

修改

我也尝试将字符串传递给htmlentities(),但这会返回一个空字符串。

此外,我尝试使用mb_detect_encoding()确定字符串的编码,但这会返回false,这意味着它无法检测到编码。

修改2

当我以十六进制模式查看Drupal数据库记录时,后退勾号返回‚Äô

0 个答案:

没有答案