You are here: php array performance « PHP « IT news, forums, messages
php array performance

Posted by Robert Erstwhile on 10/07/05 18:30

Does anyone know if there is any way to improve php array performance?

I am currently developing an application which uses very large
multidimensional arrays, with many multiple dimensions. I am rapidly
discovering that php seems to be quite weak in this area.

I have finally found a way to "allocate" the memory for php arrays
reasonably quickly and efficiently. The following code segment runs in
approx 0.03seconds and doesn't use too much memory ~ 20mb.

$array = array_fill(0,1,array_fill(0,73,array_fill(0,100001,0.01)));

However if I try to fill the array using a bunch of nested loops it uses
100s of mbs and takes a lot longer to execute. Plus if I want to change any
values within this array structure it seems to have the same effect (poor
performance). It seems like due to the way arrays are implemented within php
the environment rebuilds the array in memory everytime you make any change
to an element within the array; which is expensive.

After much reading around the subject it seems that arrays in php are not
*really* arrays at all but hash-tables, or "maps" according to the
documentation.

Does anyone know if there is any alternative data-structures to the array in
php that work more efficiently in multiple dimensions, or any other thoughts
on overcoming this problem. If I don't figure it out I'm probably going to
have to rewrite the thing in CGI/C++ to get the array performance; which I
would rather not do.

Thanks in advance.

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация