This is a global variable that determines how the keys of recordsets are presented when recordsets are retrived from the database. The recordset saves this value on creation (eg. in execute or selectLimit), and any subsequent changes to $ADODB_FETCH_MODE have no affect on existing recordsets, only on recordsets created in the future.
This variable has no effect on the data returned, only the keys of data
|ADODB_FETCH_DEFAULT||0||The recordset is returned in the default provided by the PHP driver. Use of this value is not recommended if writing cross-database applications|
|ADODB_FETCH_NUM||1||The recordset is returned as a numeric array|
|ADODB_FETCH_ASSOC||2||The recordset is returned as an associative array|
|ADODB_FETCH_BOTH||3||The record is returned as both a numeric and associative arrays. Not supported in many databases|
$ADODB_FETCH_MODE = ADODB_FETCH_NUM; $rs1 = $db->Execute('select * from table'); $ADODB_FETCH_MODE = ADODB_FETCH_ASSOC; $rs2 = $db->Execute('select * from table'); print_r($rs1->fields); /* shows _array(=>'v0',  =>'v1') */ print_r($rs2->fields); /* * shows _array(['col1']=>'v0', ['col2'] =>'v1') */
For more information on the constants used and for more granular control of this setting, see setFetchMode()