|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2007-03-11 14:52 UTC] iliaa@php.net
[2007-03-11 21:35 UTC] php at edwardk dot info
[2007-03-12 03:27 UTC] edink@php.net
[2007-03-12 03:36 UTC] edink@php.net
[2007-03-12 17:00 UTC] dmitry@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Nov 03 21:00:01 2025 UTC |
Description: ------------ Running Apache 1.3.37 with PHP 5.2.1 on Windows 2003 Standard 32bit The following PHP code was called from a browser with the size=149 (to simulate 149MB use) and the PHP memory limit is 160M. Reproduce code: --------------- <? ini_set('display_errors',true); if (isset($_GET['size']) && $_GET['size'] < 200) { $mb = intval($_GET['size']); } else { $mb=5; } $var = ''; echo 'Memory limit: '.ini_get('memory_limit').'<br>'; for ($i=0; $i<=$mb; $i++) { $var.= str_repeat('a',1*1024*1024); echo memory_get_usage().'<br>'; } echo 'String length: '. strlen($var); ?> Expected result: ---------------- PHP should, if it did run out of memory, exit with something along the lines of Fatal error: Allowed memory size of xxx bytes exhausted (tried to allocate yyy bytes) otherwise, the script should execute without crashing. Actual result: -------------- Apache child exits, browser waiting for the result of the page get a TCP connection reset and no page loaded.