]> granicus.if.org Git - php/commitdiff
Added three get modes: DB_GETMODE_ORDERED, DB_GETMODE_ASSOC and
authorStig Bakken <ssb@php.net>
Wed, 9 Feb 2000 19:04:17 +0000 (19:04 +0000)
committerStig Bakken <ssb@php.net>
Wed, 9 Feb 2000 19:04:17 +0000 (19:04 +0000)
DB_GETMODE_FLIPPED.  Docs are within.

pear/DB.php

index 1971d08b3ea8072057235dc5f42dc4ba5b337c0f..186b95a094d3b18ef183d92f75456f4182521261 100644 (file)
@@ -88,6 +88,33 @@ define("DB_BINMODE_PASSTHRU",       1);
 define("DB_BINMODE_RETURN",         2);
 define("DB_BINMODE_CONVERT",        3);
 
+// }}}
+// {{{ Get modes: flags that control the layout of query result structures
+
+/**
+ * Column data indexed by numbers, ordered from 0 and up
+ */
+define('DB_GETMODE_ORDERED', 1);
+/**
+ * Column data indexed by column names
+ */
+define('DB_GETMODE_ASSOC',   2);
+/**
+ * For multi-dimensional results: normally the first level of arrays
+ * is the row number, and the second level indexed by column number or name.
+ * DB_GETMODE_FLIPPED switches this order, so the first level of arrays
+ * is the column name, and the second level the row number.
+ */
+define('DB_GETMODE_FLIPPED', 4);
+
+/**
+ * This constant DB's default get mode.  It is possible to override by
+ * defining in your scripts before including DB.
+ */
+if (!defined('DB_GETMODE_DEFAULT')) {
+       define('DB_GETMODE_DEFAULT', DB_GETMODE_ORDERED);
+}
+
 // }}}
 
 /**
@@ -395,8 +422,8 @@ class DB_result {
         * Fetch and return a row of data.
         * @return  array   a row of data, or false on error
         */
-    function fetchRow() {
-               return $this->dbh->fetchRow($this->result);
+    function fetchRow($getmode = DB_GETMODE_DEFAULT) {
+               return $this->dbh->fetchRow($this->result, $getmode);
     }
 
     // }}}
@@ -408,8 +435,8 @@ class DB_result {
         * @param   $arr    reference to data array
         * @return  int     error code
         */
-    function fetchInto(&$arr) {
-               return $this->dbh->fetchInto($this->result, &$arr);
+    function fetchInto(&$arr, $getmode = DB_GETMODE_DEFAULT) {
+               return $this->dbh->fetchInto($this->result, &$arr, $getmode);
     }
 
     // }}}