MYSQL DB到文本文件 - chartset问题

时间:2011-08-20 23:22:40

标签: php mysql character-encoding

我从我的MySQL数据库中检索了一些文本,然后我将其传递给整洁:

$config = array(
                'wrap'                         => 0,
                'lower-literals'               => 1,
                'preserve-entities'            => 1,
                'drop-empty-paras'             => 0,
                'indent'                       => 1,
                'new-blocklevel-tags'          => 'unsubscribe, webversion'
                );

$tidy = new tidy();

$tidy->parseString($html, $config, 'utf8');

$tidy->cleanRepair();            

$fp = fopen($file_name, 'wb');

fwrite($fp, $tidy->value);

fclose($fp);

然后保存内容。但是,当我查看文本文件时,存在一些字符编码问题。在数据库中有一个看起来像这个Stan’s的sring。但是,当我在文本文件中查看相同的字符串时,它看起来像Stan’s

数据库中的字段和数据库本身的字符集为utf8_general_ci

我错过了什么?

1 个答案:

答案 0 :(得分:2)

尝试:

fwrite($fp, utf8_decode($tidy->value));

或者,您可以尝试:

fwrite($fp, utf8_encode($tidy->value));

也可以尝试不将代码更改为:

来设置字符编码
$tidy->parseString($html, $config);