Bug #28640 [Com]: problem with umlaut in wddx_deserialize

From: Date: Sat, 09 Jan 2021 10:32:52 +0000
Subject: Bug #28640 [Com]: problem with umlaut in wddx_deserialize
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-231459@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=28640&edit=1 ID: 28640 Comment by: lulacox1973 at gmail dot com Reported by: clemens at gutweiler dot net Summary: problem with umlaut in wddx_deserialize Status: Not a bug Type: Bug Package: WDDX related Operating System: Linux 2.6.3 PHP Version: 5.0.0RC2 Block user comment: N Private report: N New Comment: We have been using this for several weeks now and it seems to be going nicely. Previous Comments: ------------------------------------------------------------------------ [2004-12-07 08:35:42] tony2001@php.net Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php You have to convert your data to UTF8 if it contains non-ASCII characters. The documentation was wrong about setlocale() and this is alrady fixed. ------------------------------------------------------------------------ [2004-06-18 14:36:08] clemens at gutweiler dot net <?php var_dump( wddx_deserialize( '<?xml version="1.0" encoding="ISO-8859-1" ?>'."\n".wddx_serialize_value( 'te?st' ) ) ); ?> this works. it works also if the data are encoded with utf-8. but is a bc break! ------------------------------------------------------------------------ [2004-06-05 10:50:18] clemens at gutweiler dot net Description: ------------ wddx_deserialize stops deserializing at german umlaut character. PHP Version: 5.0.0RC3RC2 This code works properly on PHP 4 Reproduce code: --------------- <?php $wddx_data = 'test'; var_dump( wddx_deserialize( wddx_serialize_value( $wddx_data ) ) ); $wddx_data = 'te?st'; var_dump( wddx_serialize_value( $wddx_data ) ); var_dump( wddx_deserialize( wddx_serialize_value( $wddx_data ) ) ); $wddx_data = array( 'string' => 'te?st' ); var_dump( wddx_deserialize( wddx_serialize_value( $wddx_data ) ) ); ?> Expected result: ---------------- string(4) "test" string(83) "<wddxPacket version='1.0'><header/><data><string>te?st</string></data></wddxPacket>" string(5) "te?st" array(1) { ["string"]=> string(5) "te?st" } Actual result: -------------- string(4) "test" string(83) "<wddxPacket version='1.0'><header/><data><string>te?st</string></data></wddxPacket>" string(2) "te" NULL ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=28640&edit=1

« previous php.bugs (#231459) next »