使用iconv方法進行編碼轉換,在windows平臺下面可以正常的工作(本地環境使用的win7),但是在linux環境下面iconv總是返回false(測試環境使用的linux)。
參考phpinfo的信息,iconv模塊也已經正確加載,google一下,原來才知道,原來在linux版本下iconv這個方法還是有點問題的。
csdn上的一個網友給出的解決方案為:
一種方法是把iconv換成 mb_convert_encoding,另一種方法是修改iconv 的實現,從glibc 改為libiconv,搞了半天,煩躁!有朋友碰到的話,也可以這么解決了,按照該網友提供的第一個方法,將iconv方法修改為使用mb_convert_encoding,搞定。。
多謝該網友提供的解決方案.
下載:ftp://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.8.tar.gz
安裝:
- #cp libiconv-1.8.tar.gz /usr/local/src
- #tar zxvf lib*
- #./configure --prefix=/usr/local/libiconv
- #make
- #make install
編譯php
#./configure --prefix=/usr/local/php4.3.2 --with-iconv=/usr/local/libiconv/
使用的簡單例子:echo iconv("gb2312","ISO-8859-1","我們");
新聞熱點
疑難解答