diff --git a/src/Mbstring/Mbstring.php b/src/Mbstring/Mbstring.php index bc9e6acf..78aa14e1 100644 --- a/src/Mbstring/Mbstring.php +++ b/src/Mbstring/Mbstring.php @@ -1414,6 +1414,10 @@ private static function getEncoding($encoding) return 'UTF-16BE'; } + if ('UCS-2' === $encoding) { + return 'UCS-2BE'; + } + return $encoding; } diff --git a/tests/Mbstring/MbstringTest.php b/tests/Mbstring/MbstringTest.php index 44df2be1..9a4e35b1 100644 --- a/tests/Mbstring/MbstringTest.php +++ b/tests/Mbstring/MbstringTest.php @@ -73,6 +73,8 @@ public function testConvertEncoding() $this->assertSame('déjà', mb_convert_encoding(mb_convert_encoding('déjà', 'ISO-8859-1', 'UTF-8'), 'Utf-8', 'ASCII,ISO-2022-JP,UTF-8,ISO-8859-1')); $this->assertSame('déjà', mb_convert_encoding(mb_convert_encoding('déjà', 'ISO-8859-1', 'UTF-8'), 'Utf-8', ['ASCII', 'ISO-2022-JP', 'UTF-8', 'ISO-8859-1'])); $this->assertSame("d\xE9j\xE0", mb_convert_encoding('déjà', 'ISO-8859-1', '"UTF-8, ISO-8859-1"')); + $this->assertSame("\x00A\x00\xE9", p::mb_convert_encoding('Aé', 'UCS-2', 'UTF-8')); + $this->assertSame('Aé', p::mb_convert_encoding("\x00A\x00\xE9", 'UTF-8', 'UCS-2')); $var = ['déjà']; mb_convert_variables('ISO-8859-1', '"UTF-8"', $var);