数据库是mysql,数据存储编码是utf-8,页面编码是big5现在前台程序通过函数iconv("UTF-8","big5",$str)来转换时,有的简体字如果在big5里没有的话,就会空白。请教高手,这个问题如何解决呢?

解决方案 »

  1.   

    big5的字符集比UTF-8小,所以对简体字不能处理。解决方法是页面编码使用UTF-8
      

  2.   

    谢谢楼上的回复!但是现在页面因为种种原因是没办法用utf-8的。有没有其他办法呢
      

  3.   

    数据库用回big5可以吗?
    最好统一成一种编码格式.
      

  4.   

     数据库连接后mysql_query('set names "big5"');如果你数据是一致的,应该没有问题。要注意big5能转成utf8,但转回来时就不一定成功。 如果输入是big5,显示也是big5,数据库是utf8,应没问题最好统一用utf8. 
      

  5.   


    厉害!to:fxs_2008,数据库链接后我们是这样的mysql_query('set names "utf8"');
    然后在big5页面就不会显示乱码。但是就是部分简体字big5字符集没有的,就显示不了,是空白,不是乱码。我的想法是应该将简体字转换为unicode格式,比如𹑁这样的格式,就是不知道怎么做到。
      

  6.   

    mysql_query('set names "xxxx"');
    其实是从数据中取,返回指定的编码。
    减少转码工作。要保证php文件,meta里的编码和xxx要一致,一般不会产生乱码,这样处理时也不用转码具体的看着办吧𹑁是html实体,PHP时有实体编码函数htmlentity,记不太清了,但不一定能解决你的问题