php - 警告 mb_convert_encoding() 未知编码 "WINDOWS-1256"

标签 php character-encoding iconv

在 mb_convert_encoding() 中转换 windows-1256 时出错:

Warning: mb_convert_encoding(): Unknown encoding "WINDOWS-1256" (K:/xampp/htdocs/master/trunk/__swift/includes/functions.php:715)



我知道有一个替代函数 iconv() 可以解决这个问题,但我知道 iconv() 也一定存在一些问题。我正在深入研究这两者,为什么以及在何处使用它们。任何帮助将不胜感激。

最佳答案

没有理由相信错误消息是不正确的:

Unknown encoding "WINDOWS-1256"



你提到了两个功能:
  • mb_convert_encoding() 支持的编码列于 PHP manual .没有提到 Win-1256。它们也可以通过 mb_list_encodings() 获得功能。看来您不能将此扩展程序用于此类编码。
  • iconv() 支持的编码列于 libiconv web site .在那里我们可以找到 CP1256 .是的,这是完全相同的编码,但是 iconv()不支持其他别名(顺便说一句,这是官方 IANA 名称)。
  • 关于php - 警告 mb_convert_encoding() 未知编码 "WINDOWS-1256",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18631777/

    相关文章:

    php - mysql_fetch_assoc() 返回意外值

    php - 在 PHP 中转换时间戳

    javascript - 使用 JavaScript 计算值并发送给 PHP

    html - Node.js 请求 - 无法解码 HTML 页面

    unicode - iconv:使用 BOM 从 Windows ANSI 转换为 UTF-8

    linux libiconv 从 ISO8859 或 IBM850 转码到 UTF8 错误

    php - 使用 Composer 安装 Ratchet 时出现问题

    c# - C++和C#的字符编码不同

    c++ - 我如何打印 UTF-8 字符 C++?

    PDF 数据提取给出符号/乱码?