On Fri, Oct 28, 2011 at 06:19:56PM -0400, Daniel Brown wrote:
> On Fri, Oct 28, 2011 at 18:13, Paul Halliday <paul.halli...@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().

I'm not seeing any numeric keys in my mysql_fetch_assoc() arrays.

However, mysql_fetch_row (by default) does both: the array will be
indexed numerically from 0 to N-1 corresponding to the table's N
columns, and the array will also have string key indices which
correspond to the query's column names.  So by default,
mysql_fetch_row uses twice the amount of data, because each field
appears in the array twice.

var_dump( $row ) will show in graphic detail.

PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to