今天做一个程序,本网站是utf-8的,需传值给合作网站,试了很多方法都不适用 ,php就两个转换函数php有2个编码转换的函数: iconv() 函数 和 mb_convert_encoding() 函数.可是却发现根本不适用,还是乱码,很让人费解,用urlencode也是如此,乱码,后经百度,知,需把两个函数结合来使用,如下urlencode(iconv( "UTF-8", "gb2312",编码中文),却还是如此,没有解决问题。
后来经查证,因为任何函数都会有执行错误的时候,而iconv在执行的时候就经常出错。这里需要加一个函数,如下
urlencode(iconv( "UTF-8", "gb2312//IGNORE",编码中文),经这样就可以转化正确。
加上这个就可以是ICONV()函数忽略错误,继续执行。
同理,要像把gb2312换为utf-8只要写上iconv("gb2312","utf-8//IGNORE",编码中文);就行这样就经松解决传值乱码问题。