我正在尝试从yahoo.com获取搜索结果。
但是,file_get_contents()会将UTF-8字符集(yahoo使用的字符集)的内容转换为ISO-8859-1。
尝试以下方法:
$filename = "http://search.yahoo.com/search;_ylt=A0oG7lpgGp9NTSYAiQBXNyoA?p=naj%C5%A1%C5%A5astnej%C5%A1%C3%AD&fr2=sb-top&fr=yfp-t-701&type_param=&rd=pref";
echo file_get_contents($filename);
脚本作为
header('Content-Type: text/html; charset=UTF-8');
或者
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
或者
$er = mb_convert_encoding($filename , 'UTF-8');
或者
$s2 = iconv("ISO-8859-1","UTF-8",$filename );
或者
echo utf8_encode(file_get_contents($filename));
对于获取的网页内容中出现的特殊字符,如 š ť ž 等,直接使用“NOT help”是无法解决的,因为它们会被替换成问号 ???。
我希望能得到任何形式的帮助。