Re: mysql_fetch_array() vs mysql_fetch_assoc() WAS: Re: [PHP] Why does this script run out of memory?
| From: | Paul Halliday | Date: | Fri, 28 Oct 2011 22:32:51 +0000 |
| Subject: | Re: mysql_fetch_array() vs mysql_fetch_assoc() WAS: Re: [PHP] Why does this script run out of memory? | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-315523@lists.php.net to get a copy of this message | ||
On Fri, Oct 28, 2011 at 7:19 PM, Daniel Brown <danbrown@php.net> wrote:
> On Fri, Oct 28, 2011 at 18:13, Paul Halliday <paul.halliday@gmail.com> wrote:
>>
>> Whats the difference between fetch_assoc and fetch_row?
>>
>> I use:
>> while ($row = mysql_fetch_row($theQuery)) {
>> doCartwheel;
>> }
>>
>> on just under 300 million rows and nothing craps out. I have
>> memory_limit set to 4GB though. Although, IIRC I pushed it up for GD
>> not mysql issues.
>>
>> Same OS and php ver, MySQL is 5.1.48
>
> Please don't hijack other's threads to ask a question. I've
> started this as a new thread to address this question.
>
> mysql_fetch_array() grabs all of the data and places it in a
> simple numerically-keyed array.
>
> By contrast, mysql_fetch_assoc() grabs it and populates an
> associative array. This means that the column names (or aliases, et
> cetera) become the keys for the array. With mysql_fetch_assoc(), you
> can still call an array key by number, but it's not vice-versa with
> mysql_fetch_array().
>
> The difference in overhead, if you meant that (in which case, my
> apologies for reading it as a question of functional difference), is
> variable: it's based mainly on the difference between the bytes
> representing the integers used as keys in mysql_fetch_array() versus
> the size in bytes of the strings used as keys in mysql_fetch_assoc().
>
> --
> </Daniel P. Brown>
> Network Infrastructure Manager
> http://www.php.net/
>
Sorry.
I was just throwing it out there with the hope that there might be a
tidbit that would help the OP.
I have a simliar setup and I can query far more than a 1/4 million
rows. What I offered is what I am doing differently.
--
Paul Halliday
http://www.squertproject.org/