php utf-8轉換gb2312 字串被截斷解決方案_PHP教程

來源:互聯網
上載者:User
iconv (“utf-8”,“gb2312//ignore”,$data)
ignore的直接意思就是忽略,在此為忽略轉換時的錯誤,如果沒有ignore參數,所有該字元後面的字串都無法被儲存。

conv不是php教程的預設函數,也是預設安裝的模組。需要安裝才能用的。
如果是windows2000+php,你可以修改php.ini檔案,將extension=php_iconv.dll前的";"去掉,同時你要 copy你的原php安裝檔案下的iconv.dll到你的winnt/system32下


string iconv ( string $in_charset , string $out_charset , string $str )

在使用這個函數進行字串編碼轉換時,需要注意,如果將utf-8轉換為gb2312時,可能會出現字串被截斷的情況發生。

此時可以使用以下方法解決:

$str=iconv('utf-8',"gb2312//translit",file_get_contents($filepath));

即在第二個參數出添加紅色字部分,表示:如果在目標編碼中找不到與源編碼相匹配的字元,會選擇相似的字元進行轉換。


此處也可以使用://ignore 這個參數,表示忽略不能轉換的字元

http://www.bkjia.com/PHPjc/632331.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/632331.htmlTechArticleiconv (utf-8,gb2312//ignore,$data) ignore的直接意思就是忽略,在此為忽略轉換時的錯誤,如果沒有ignore參數,所有該字元後面的字串都無法被保...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.