[php-src] Issue #14359: mb_convert_encoding UTF16 to UTF8

From: Date: Wed, 29 May 2024 14:31:00 +0000
Subject: [php-src] Issue #14359: mb_convert_encoding UTF16 to UTF8
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-246977@lists.php.net to get a copy of this message
Issue: https://github.com/php/php-src/issues/14359 Author: MSchwenk-14 ### Description The following code: $test = hex2bin("fffe3c003f0078006d006c002000760065007200730069006f006e003d00220031002e0030002200200065006e0063006f00640069006e0067003d0022005500540046002d0031003600220020007300740061006e00640061006c006f006e0065003d0022006e006f0022003f003e000d000a"); echo ("#HEX-16: ".bin2hex($test)); echo ("#-HEX-8: ".bin2hex(mb_convert_encoding($test , 'UTF-8' , 'UTF-16LE'))); Resulted in this output under php 8.0.30 or lower #HEX-16: fffe3c003f0078006d006c002000760065007200730069006f006e003d00220031002e0030002200200065006e0063006f00640069006e0067003d0022005500540046002d0031003600220020007300740061006e00640061006c006f006e0065003d0022006e006f0022003f003e000d000a #-HEX-8: efbbbf3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d313622207374616e64616c6f6e653d226e6f223f3e0d That is right If i use php 8.1. or higher #HEX-16: fffe3c003f0078006d006c002000760065007200730069006f006e003d00220031002e0030002200200065006e0063006f00640069006e0067003d0022005500540046002d0031003600220020007300740061006e00640061006c006f006e0065003d0022006e006f0022003f003e000d000a #-HEX-8: efbbbf3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d313622207374616e64616c6f6e653d226e6f223f3e0d3f I get a 3f on the end of output. That is an error. The mistake stats with version 8.1.0 The same mistake comes on iconv ### PHP Version PHP 8..0.30, to PHP 8.1.0 ### Operating System debian... also on PHP sandbox

« previous php.bugs (#246977) next »