Memory usage of foreach
am 08.04.2008 18:39:13 von Daniel Klein
I read somewhere that 'foreach' iterates over a 'copy' of the array, whereas
doing something like:
while (list($key, $value) = each($myarray))
iterates over the original array. Up til now, I've been using the 'foreach'
method.
If this is true then I'm concerned about memory usage as some of the arrays
I'm working on can grow fairly large.
Is it possible to check memory usage of your php program?
I may be converting code over to the list() method. What are the caveats of
doing this?
Daniel Klein
Re: Memory usage of foreach
am 08.04.2008 23:50:31 von Michael Fesser
..oO(Daniel Klein)
>I read somewhere that 'foreach' iterates over a 'copy' of the array, whereas
>doing something like:
>
>while (list($key, $value) = each($myarray))
>
>iterates over the original array. Up til now, I've been using the 'foreach'
>method.
>
>If this is true then I'm concerned about memory usage as some of the arrays
>I'm working on can grow fairly large.
>
>Is it possible to check memory usage of your php program?
http://php.net/memory_get_usage
>I may be converting code over to the list() method. What are the caveats of
>doing this?
Do you run into performance problems?
Google "premature optimization" and use a profiler to find the real
bottlenecks in your code.
Micha