ID: 26639 User updated by: s dot masugata at digicom dot dnp dot co dot jp Reported By: s dot masugata at digicom dot dnp dot co dot jp -Status: Feedback +Status: Open Bug Type: mbstring related Operating System: Linux/Solaris(sparc) PHP Version: 4.3.4 New Comment:
Although tried on the snapshot(php4-STABLE-200312180630), was still useless. Since a result is the same, omits. Before it, the portion of the code in question seems to hardly be changed from PHP4.3.4. I think it a problem to process as it is, without copying array. Previous Comments: ------------------------------------------------------------------------ [2003-12-18 03:13:34] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php4-STABLE-latest.tar.gz For Windows: http://snaps.php.net/win32/php4-win32-STABLE-latest.zip ------------------------------------------------------------------------ [2003-12-16 06:45:23] s dot masugata at digicom dot dnp dot co dot jp sorry, Actual result was wrong. Actual result: -------------- string(4) "no changed multi-byte string's" string(3) "changed multi-byte string's" array(1) { [0]=> string(3) "changed multi-byte string's" } array(1) { [0]=> string(3) "changed multi-byte string's" } ------------------------------------------------------------------------ [2003-12-16 06:42:46] s dot masugata at digicom dot dnp dot co dot jp Description: ------------ Array which mb_convert_variables does not specify is changed. I think that this operation is not specification but a bug with it being individual. Isn't it changed about this operation by PHP4.3.5 or it or later? Reproduce code: --------------- <? // no problem. $Str1 = "multi-byte string's"; $Str2 = $Str1; mb_convert_variables( "SJIS", mb_detect_order( ), $Str2 ); var_dump( $Str1 ); var_dump( $Str2 ); // unexpected operation. $Array1 = array( "multi-byte string's" ); $Array2 = $Array1; mb_convert_variables( "SJIS", mb_detect_order( ), $Array2 ); var_dump( $Array1 ); var_dump( $Array2 ); ?> Expected result: ---------------- string(4) "no changed multi-byte string's" string(3) "changed multi-byte string's" array(1) { [0]=> string(3) "no changed multi-byte string's" } array(1) { [0]=> string(3) "changed multi-byte string's" } Actual result: -------------- string(4) "no changed multi-byte string's" string(3) "changed multi-byte string's" array(1) { [0]=> string(4) "no changed multi-byte string's" } array(1) { [0]=> string(3) "changed multi-byte string's" } string(4) "no changed multi-byte string's" string(3) "changed multi-byte string's" array(1) { [0]=> string(3) "changed multi-byte string's" } array(1) { [0]=> string(3) "changed multi-byte string's" } ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=26639&edit=1