好吧,我放弃了。 我一直在搞乱所有我想到的从目标网站检索数据,这些网站有中文繁体编码信息(charset = GB2312)。
我一直在使用simple_html_parser,但它似乎没有返回中文字符,事实上我得到的是一些嵌入菱形形状的奇怪问号。 (“ ѯ ؼ ֣ ”喜欢这样)
声明php文件的编码除了删除页面开头显示的一些不需要的字符外没有做任何事情。
通过声明我的意思是:
header('Content-Type', 'text/html; charset=GB2312');
我无法获得用中文写的任何数据,也试过file_get_contents
同样的运气。我可能遗漏了一些明显的东西,因为我在其他地方找不到任何相关的讨论。
提前致谢。
答案 0 :(得分:5)
您是否尝试使用mb_convert_encoding或iconv转换编码,例如
$str = mb_convert_encoding($content, 'UTF-8', 'GB2312');
或
$str = iconv("UTF-8", "GB2312//IGNORE", $content);
答案 1 :(得分:2)
获取源使用的任何字符集,然后将其转换为本地可用的内容,例如UTF-8。 然后将其发送到浏览器。
答案 2 :(得分:-1)
设置header('Content-Type: text/html; charset=utf-8');
这对我有用