PHP

warning: iconv(): Wrong encoding, conversion from

字號+ 編輯: 种花家 修訂: 种花家 來源: 原创 2023-09-09 我要說兩句(0)

在處理excel導入導出的時候經常會出現這樣的報錯, 這裡介紹一下如何處理。

wps和微软office的excel文件编码默认不是UTF-8, 笔者为了处理这个问题, 萌试将ANSI直转成UTF-8, 遇到报错

warning: iconv(): Wrong encoding, conversion from "ANSI" to "UTF-8" is not allowed

我们遇到的业务场景是: 程序逻辑和数据库内置的编码都是UTF-8的, 但外部供应商导进来的文件说不准是什么编码, 但已知是有几个可能的编码的。这个场景我们用到了php mbstring的一个自带函数, 先拿源代码举例:

$encode = mb_detect_encoding($str, array('ASCII', 'UTF-8', "GB2312", "GBK"));

这里返回的$encode就是编码值, 类型为字符串。把这个返回的结果直接塞到iconv里面:

$converted_str = iconv($encode, 'UTF-8', $str);

拿到的$converted_str就是转换完的UTF-8字符串。


閲完此文,您的感想如何?
  • 有用

    145

  • 沒用

    9

  • 開心

    15

  • 憤怒

    6

  • 可憐

    38

1.如文章侵犯了您的版權,請發郵件通知本站,該文章將在24小時内刪除;
2.本站標注原創的文章,轉發時煩請注明來源;
3.交流群: PHP+JS聊天群

相關課文
  • mac開發接入微信公衆號接口返回報錯 cURL error 56: SSLRead() return error -9806

  • PHP的換行符是什麽

  • pecl安裝程序時報錯Array and string offset access syntax with curly braces is no longer supported

  • 由於商家傳入的H5交易參數有誤,該筆交易暫時無法完成,請聯系商家解決

我要說說
網上賓友點評