一个页面如何显示两种编码的中文?

我的页面默认编码是gb2312,

1<meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>

而页面中有一个部分是通过函数输出,函数如下
function info(){
if($this->is_valid())
{
$tldname=$this->get_tld();
$domainname=$this->get_domain();
$whois_server=$this->get_whois_server();
if($whois_server!="")
{
// Getting whois information
$fp = @fsockopen($whois_server,43) or die("连接服务器失败");
$dom=$domainname.".".$tldname;
fputs($fp, "$dom\r\n") or die("发生未知错误");
$string="";
while(!feof($fp))
{
$string.=fgets($fp,128);
}
fclose($fp);
return $string;
}
else
{
return "No whois server for this tld in list!";
}
}
else{
return "Domainname isn't valid!";
}
}

这个函数输出的中文在gb2312下显示乱码,当编码设为UTF-8时可以显示中文,但页面其他原有中文又显示不了

请问该怎么解决?多谢

---------------------------------------------------------------

若函数info()返回的确为UTF-8的话,则

echo iconv("UTF-8","GB2312",info());
---------------------------------------------------------------
echo iconv("UTF-8","GB2312",$my->info());

我这么写的,运行时到这就不执行了
怎么错了?

---------------------------------------------------------------
你可能没有连接iconv扩展库
---------------------------------------------------------------

php.ini 里 ;extension=php_iconv.dll 前的分号去掉试试。

---------------------------------------------------------------
OK,解决!
多谢啦!

Published At
Categories with Web编程
comments powered by Disqus