mb_detect_encoding无法检测到SJIS-mac?

时间:2019-09-18 02:01:14

标签: php character-encoding php-7.2

我有一个SJIS编码的csv文件。

当我致电mb_convert_encoding($contentOfFile, 'UTF-8', 'SJIS-mac')时,UTF-8输出正确。

但是当我使用mb_detect_encoding($contentOfFile, ['SJIS-mac', 'SJIS-win', 'SJIS', 'UTF-8'])时,它总是返回SJIS-win。

PHP版本:7.2.11

<?php

$utf8Str = "❶❷❸❹❺";

$sjisStr = mb_convert_encoding($utf8Str, 'SJIS-mac');

echo(mb_detect_encoding($sjisStr, ['UTF-8','SJIS-win', 'SJIS-mac', 'SJIS']));

1 个答案:

答案 0 :(得分:1)

这是PHP的mbstring扩展中的一个错误,我正在修复。 (在我正修复该错误的同时发现您的问题非常有趣!)