gpt4 book ai didi

php - mb_detect_encoding 不能在 Windows-1250 (CP1250) 上正常工作

转载 作者:行者123 更新时间:2023-12-04 02:11:22 29 4
gpt4 key购买 nike

我在 mb_detect_encoding() 中检测 CP1250 时遇到问题,就我而言,我想检测 3 种编码:

mb_detect_encoding($string, 'UTF-8,ISO-8859-2,Windows-1250')

但是 Windows 不支持编码,有什么解决方案吗?

最佳答案

mb_detect_encoding总是“检测”单字节编码。您可以在 mb_detect_order 的文档中阅读有关此内容的信息。 :

mbstring currently implements the following encoding detection filters. If there is an invalid byte sequence for the following encodings, encoding detection will fail.

UTF-8, UTF-7, ASCII, EUC-JP,SJIS, eucJP-win, SJIS-win, JIS, ISO-2022-JP

For ISO-8859-X, mbstring always detects as ISO-8859-X.

For UTF-16, UTF-32, UCS2 and UCS4, encoding detection will fail always.



结论:
  • 要求检测ISO-8859-2是没有意义的;它总是会告诉你“是的,就是这样”(当然,除非它首先检测到 UTF-8)。
  • 不支持 Windows-1250,但即使支持它也会像 ISO-8859-2 一样工作。

  • 通常,不可能准确地检测单字节编码。如果您发现自己需要在 PHP 中执行此操作,则需要手动执行此操作;不要期望非常好的结果。

    关于php - mb_detect_encoding 不能在 Windows-1250 (CP1250) 上正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17104340/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com