#31360 [Bgs]: Maybe Array operation has some bug
ID: 31360 User updated by: tokimeki at dot com dot tw Reported By: tokimeki at dot com dot tw Status: Bogus Bug Type: Arrays related Operating System: FreeBSD / Windows XP PHP Version: 5.0.3 New Comment: I find a solution. use this function to replace array copy. ex: $test = clone($arr); // replace $test = $arr; function & clone(&$var) { return $var; } Previous Comments: [2004-12-31 06:03:49] tokimeki at dot com dot tw I'm sorry! I already find the problem. That is the serialize function which can't serialize a recursive array~~~ [2004-12-31 04:34:52] tokimeki at dot com dot tw I already change the setting (memory_limit = 128M) in php.ini, But it has the same error. I think that: $arr is a recursive array, so the operation maybe have some different! Notice that, if I remark line 29, and call sohw_var twice, it's ok! So, this is a error. Could you tell me, how many memory is enogth? Thank you! [2004-12-31 03:41:11] [EMAIL PROTECTED] 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 Increase the memory limit, in your code you end up duplicating lot's of data which causes this limit to be reached. [2004-12-31 02:40:09] tokimeki at dot com dot tw Description: look the two source, index.php and debug.php. At index.php (line 29), after array copy, and call show_var to show $arr or $test, I get a error. Reproduce code: --- http://timteam.org/?TIM=FORUM&FORUM=1&ShowDocument=12961#TIM12961 Expected result: ok (array) = { obj (object) = {} str (string) = str arr (array) = {} number (integer) = 100 bool (boolean) = 1 null (NULL) = test (array) = { AAA (string) = 000 BBB (array) = { zzz (string) = Z xxx (array) = { zzz (string) = Z xxx (array) -> (@[test][BBB][xxx]) } yyy (array) = { www (array) -> (@[test][BBB]) vvv (array) -> (@[test][BBB]) } } CCC (array) -> (@) DDD (string) = ABC EEE (array) -> (@[test][BBB][yyy]) FFF (array) -> (@[test][BBB]) <>[EMAIL PROTECTED]&*()_+|~`\:;,.? (array) = { TEST (string) = <>[EMAIL PROTECTED]&*()_+|~`\:;,.? } (array) -> (@[test][<>[EMAIL PROTECTED]&*()_+|~`\:;,.?]) } } Actual result: -- ok Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 128 bytes) in /home/tokimeki/public_html/test/debug.php on line 29 -- Edit this bug report at http://bugs.php.net/?id=31360&edit=1
#31360 [Bgs]: Maybe Array operation has some bug
ID: 31360 User updated by: tokimeki at dot com dot tw Reported By: tokimeki at dot com dot tw Status: Bogus Bug Type: Arrays related Operating System: FreeBSD / Windows XP PHP Version: 5.0.3 New Comment: I'm sorry! I already find the problem. That is the serialize function which can't serialize a recursive array~~~ Previous Comments: [2004-12-31 04:34:52] tokimeki at dot com dot tw I already change the setting (memory_limit = 128M) in php.ini, But it has the same error. I think that: $arr is a recursive array, so the operation maybe have some different! Notice that, if I remark line 29, and call sohw_var twice, it's ok! So, this is a error. Could you tell me, how many memory is enogth? Thank you! [2004-12-31 03:41:11] [EMAIL PROTECTED] 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 Increase the memory limit, in your code you end up duplicating lot's of data which causes this limit to be reached. [2004-12-31 02:40:09] tokimeki at dot com dot tw Description: look the two source, index.php and debug.php. At index.php (line 29), after array copy, and call show_var to show $arr or $test, I get a error. Reproduce code: --- http://timteam.org/?TIM=FORUM&FORUM=1&ShowDocument=12961#TIM12961 Expected result: ok (array) = { obj (object) = {} str (string) = str arr (array) = {} number (integer) = 100 bool (boolean) = 1 null (NULL) = test (array) = { AAA (string) = 000 BBB (array) = { zzz (string) = Z xxx (array) = { zzz (string) = Z xxx (array) -> (@[test][BBB][xxx]) } yyy (array) = { www (array) -> (@[test][BBB]) vvv (array) -> (@[test][BBB]) } } CCC (array) -> (@) DDD (string) = ABC EEE (array) -> (@[test][BBB][yyy]) FFF (array) -> (@[test][BBB]) <>[EMAIL PROTECTED]&*()_+|~`\:;,.? (array) = { TEST (string) = <>[EMAIL PROTECTED]&*()_+|~`\:;,.? } (array) -> (@[test][<>[EMAIL PROTECTED]&*()_+|~`\:;,.?]) } } Actual result: -- ok Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 128 bytes) in /home/tokimeki/public_html/test/debug.php on line 29 -- Edit this bug report at http://bugs.php.net/?id=31360&edit=1
#31360 [Bgs]: Maybe Array operation has some bug
ID: 31360 User updated by: tokimeki at dot com dot tw Reported By: tokimeki at dot com dot tw Status: Bogus Bug Type: Arrays related Operating System: FreeBSD / Windows XP PHP Version: 5.0.3 New Comment: I already change the setting (memory_limit = 128M) in php.ini, But it has the same error. I think that: $arr is a recursive array, so the operation maybe have some different! Notice that, if I remark line 29, and call sohw_var twice, it's ok! So, this is a error. Could you tell me, how many memory is enogth? Thank you! Previous Comments: [2004-12-31 03:41:11] [EMAIL PROTECTED] 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 Increase the memory limit, in your code you end up duplicating lot's of data which causes this limit to be reached. [2004-12-31 02:40:09] tokimeki at dot com dot tw Description: look the two source, index.php and debug.php. At index.php (line 29), after array copy, and call show_var to show $arr or $test, I get a error. Reproduce code: --- http://timteam.org/?TIM=FORUM&FORUM=1&ShowDocument=12961#TIM12961 Expected result: ok (array) = { obj (object) = {} str (string) = str arr (array) = {} number (integer) = 100 bool (boolean) = 1 null (NULL) = test (array) = { AAA (string) = 000 BBB (array) = { zzz (string) = Z xxx (array) = { zzz (string) = Z xxx (array) -> (@[test][BBB][xxx]) } yyy (array) = { www (array) -> (@[test][BBB]) vvv (array) -> (@[test][BBB]) } } CCC (array) -> (@) DDD (string) = ABC EEE (array) -> (@[test][BBB][yyy]) FFF (array) -> (@[test][BBB]) <>[EMAIL PROTECTED]&*()_+|~`\:;,.? (array) = { TEST (string) = <>[EMAIL PROTECTED]&*()_+|~`\:;,.? } (array) -> (@[test][<>[EMAIL PROTECTED]&*()_+|~`\:;,.?]) } } Actual result: -- ok Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 128 bytes) in /home/tokimeki/public_html/test/debug.php on line 29 -- Edit this bug report at http://bugs.php.net/?id=31360&edit=1