Connecting Tech Pros Worldwide Help | Site Map

Large Array Problem

 
LinkBack Thread Tools Search this Thread
  #1  
Old July 17th, 2005, 05:44 AM
Mark
Guest
 
Posts: n/a
Default Large Array Problem

I am using PHP 4.3.5. I am having a problem in which my script is
crashing when it is using a large array. I have simplified the
problem down to the following example:

<?
set_time_limit(0);
echo("<html><body>test<br>");
$array1 = array();
$value1 = 1;
for ($index = 0; $index < 160000; $index++)
{
$array1[] = $value1;
}
for($index = 0; $index < 100; $index++)
{
echo("index = $index, value = $array1[$index]<br>");
}
echo("done<br>");
echo("</body></html>");
exit(0);
?>

If I run the above code it crashes with nothing displayed to the
screen. If I change the loop to go to 80000 instead of 160000 then it
works fine.

Also, I can keep the loop setting at 160000 but change the line:
$array1[] = $value1;
to instead read
$array1[] = 1;
and then it also works fine.

Why does it fail when there are 160000 elements in the array that are
set with a variable?

Thanks,
Mark

  #2  
Old July 17th, 2005, 05:44 AM
michel
Guest
 
Posts: n/a
Default Re: Large Array Problem

Try:
print("index = $index, value = $array1[$index]<br>");flush();

and see where it goes wrong exactly. it will give you the output directly.

Mich

"Mark" <marktmp87342@yahoo.com> wrote in message
news:5f18923b.0406092155.5efa561f@posting.google.c om...[color=blue]
> I am using PHP 4.3.5. I am having a problem in which my script is
> crashing when it is using a large array. I have simplified the
> problem down to the following example:
>
> <?
> set_time_limit(0);
> echo("<html><body>test<br>");
> $array1 = array();
> $value1 = 1;
> for ($index = 0; $index < 160000; $index++)
> {
> $array1[] = $value1;
> }
> for($index = 0; $index < 100; $index++)
> {
> echo("index = $index, value = $array1[$index]<br>");
> }
> echo("done<br>");
> echo("</body></html>");
> exit(0);
> ?>
>
> If I run the above code it crashes with nothing displayed to the
> screen. If I change the loop to go to 80000 instead of 160000 then it
> works fine.
>
> Also, I can keep the loop setting at 160000 but change the line:
> $array1[] = $value1;
> to instead read
> $array1[] = 1;
> and then it also works fine.
>
> Why does it fail when there are 160000 elements in the array that are
> set with a variable?
>
> Thanks,
> Mark[/color]


  #3  
Old July 17th, 2005, 05:44 AM
Chung Leong
Guest
 
Posts: n/a
Default Re: Large Array Problem

"Mark" <marktmp87342@yahoo.com> wrote in message
news:5f18923b.0406092155.5efa561f@posting.google.c om...[color=blue]
> I am using PHP 4.3.5. I am having a problem in which my script is
> crashing when it is using a large array. I have simplified the
> problem down to the following example:
>
> <?
> set_time_limit(0);
> echo("<html><body>test<br>");
> $array1 = array();
> $value1 = 1;
> for ($index = 0; $index < 160000; $index++)
> {
> $array1[] = $value1;
> }
> for($index = 0; $index < 100; $index++)
> {
> echo("index = $index, value = $array1[$index]<br>");
> }
> echo("done<br>");
> echo("</body></html>");
> exit(0);
> ?>
>
> If I run the above code it crashes with nothing displayed to the
> screen. If I change the loop to go to 80000 instead of 160000 then it
> works fine.
>
> Also, I can keep the loop setting at 160000 but change the line:
> $array1[] = $value1;
> to instead read
> $array1[] = 1;
> and then it also works fine.
>
> Why does it fail when there are 160000 elements in the array that are
> set with a variable?[/color]

What do you mean by "crashing?" Did Apache (or whatever) blow up or did you
just get a blank page? On computers with small amount of memory, PHP can
indeed crash the server.


 

Bookmarks

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Popular Articles

What is Bytes?

We are a network of experts and professionals in IT and software development that help one another with answers to tough questions and share insights. Get the best answers to your questions from over 220,662 network members.