日期:2014-05-17  浏览次数:20444 次

奇怪的乱码问题,求助大家!!!!!!!
经过是这样的,我要获取一个远程的页面内容(纯文本,没有标签)。
然后我获取到以后就打印输出,测试一下获取的内容对不对,这时就出现奇怪的现象了。

$content:保存获取到的远程页面的内容。
$str:保存字符串“aaaa”。

当我直接输出$content的时候,输出的是正确的内容:
PHP code

[00:00.00]我爱歌词网 www.5ilrc.com [00:02.00]霜华浓 [00:00.56] [00:01.71]演唱:小曲儿 [00:02.84]作词:墨十二 [00:03.71]作曲:寒苍凌 [00:04.73]编曲:寒苍凌 [00:05.77]歌词编辑:文超 [00:10.63]QQ:835572916 [00:22.42] [00:31.11]像雾一样漫过眼



但我如果先输出$str,再输出$content,就出错了:
PHP code

aaaa
[00:00.00]b1rLk蛬Q www.5ilrc.com [00:02.00]桸SSm [00:00.56] [00:01.71]o1U?\騠?Q [00:02.84]\O蛬?╔AS孨 [00:03.71]\O騠?襕蛡蘍 [00:04.73]騠?襕蛡蘍 [00:05.77]Lk蛬憦:噀厤 [00:10.63]QQ:835572916 [00:22.42] [00:31.11]螾?N7h+o菑<w 



我这个脚本里也没有HTML标签,文件编码是UTF-8的。
为什么出现这种情况呢?该怎么调试呢???


------解决方案--------------------
考虑用iconv或者mb_convert_encoding转换一下编码
------解决方案--------------------
你的 $content 是 utf-16 编码的,对于 utf-8 需要做一次编码转换
$content = iconv('utf-16', 'utf-8', $content);