summaryrefslogtreecommitdiffstats
path: root/system/database/drivers/odbc
diff options
context:
space:
mode:
authorAndrey Andreev <narf@bofh.bg>2012-07-04 22:10:46 +0200
committerAndrey Andreev <narf@bofh.bg>2012-07-04 22:10:46 +0200
commit08364ea08c53bd872504d5d6c20110540df5e81f (patch)
tree428c4d3cce274bc5010d1ac007b7f48e1d302701 /system/database/drivers/odbc
parent626f1a657206a8b33a59c20388d0ec4de4593487 (diff)
Create aliases for odbc_fetch_array() and odbc_fetch_object() instead of using custom methods
Signed-off-by: Andrey Andreev <narf@bofh.bg>
Diffstat (limited to 'system/database/drivers/odbc')
-rw-r--r--system/database/drivers/odbc/odbc_result.php130
1 files changed, 68 insertions, 62 deletions
diff --git a/system/database/drivers/odbc/odbc_result.php b/system/database/drivers/odbc/odbc_result.php
index 227fe4fac..af532110a 100644
--- a/system/database/drivers/odbc/odbc_result.php
+++ b/system/database/drivers/odbc/odbc_result.php
@@ -146,9 +146,7 @@ class CI_DB_odbc_result extends CI_DB_result {
*/
protected function _fetch_assoc()
{
- return function_exists('odbc_fetch_array')
- ? odbc_fetch_array($this->result_id)
- : $this->_odbc_fetch_array($this->result_id);
+ return odbc_fetch_array($this->result_id);
}
// --------------------------------------------------------------------
@@ -162,65 +160,7 @@ class CI_DB_odbc_result extends CI_DB_result {
*/
protected function _fetch_object()
{
- return function_exists('odbc_fetch_object')
- ? odbc_fetch_object($this->result_id)
- : $this->_odbc_fetch_object($this->result_id);
- }
-
- // --------------------------------------------------------------------
-
- /**
- * Result - object
- *
- * subsititutes the odbc_fetch_object function when
- * not available (odbc_fetch_object requires unixODBC)
- *
- * @return object
- */
- protected function _odbc_fetch_object(& $odbc_result)
- {
- $rs = array();
- if ( ! odbc_fetch_into($odbc_result, $rs))
- {
- return FALSE;
- }
-
- $rs_obj = new stdClass();
- foreach ($rs as $k => $v)
- {
- $field_name = odbc_field_name($odbc_result, $k+1);
- $rs_obj->$field_name = $v;
- }
-
- return $rs_obj;
- }
-
- // --------------------------------------------------------------------
-
- /**
- * Result - array
- *
- * subsititutes the odbc_fetch_array function when
- * not available (odbc_fetch_array requires unixODBC)
- *
- * @return array
- */
- protected function _odbc_fetch_array(& $odbc_result)
- {
- $rs = array();
- if ( ! odbc_fetch_into($odbc_result, $rs))
- {
- return FALSE;
- }
-
- $rs_assoc = array();
- foreach ($rs as $k => $v)
- {
- $field_name = odbc_field_name($odbc_result, $k+1);
- $rs_assoc[$field_name] = $v;
- }
-
- return $rs_assoc;
+ return odbc_fetch_object($this->result_id);
}
// --------------------------------------------------------------------
@@ -295,5 +235,71 @@ class CI_DB_odbc_result extends CI_DB_result {
}
+// --------------------------------------------------------------------
+
+if ( ! function_exists('odbc_fetch_array'))
+{
+ /**
+ * ODBC Fetch array
+ *
+ * Emulates the native odbc_fetch_array() function when
+ * it is not available (odbc_fetch_array() requires unixODBC)
+ *
+ * @param resource
+ * @param int
+ * @return array
+ */
+ function odbc_fetch_array(& $result, $rownumber = 1)
+ {
+ $rs = array();
+ if ( ! odbc_fetch_into($result, $rs, $rownumber))
+ {
+ return FALSE;
+ }
+
+ $rs_assoc = array();
+ foreach ($rs as $k => $v)
+ {
+ $field_name = odbc_field_name($result, $k+1);
+ $rs_assoc[$field_name] = $v;
+ }
+
+ return $rs_assoc;
+ }
+}
+
+// --------------------------------------------------------------------
+
+if ( ! function_exists('odbc_fetch_object'))
+{
+ /**
+ * ODBC Fetch object
+ *
+ * Emulates the native odbc_fetch_object() function when
+ * it is not available.
+ *
+ * @param resource
+ * @param int
+ * @return object
+ */
+ function odbc_fetch_object(& $result, $rownumber = 1)
+ {
+ $rs = array();
+ if ( ! odbc_fetch_into($result, $rs, $rownumber))
+ {
+ return FALSE;
+ }
+
+ $rs_object = new stdClass();
+ foreach ($rs as $k => $v)
+ {
+ $field_name = odbc_field_name($result, $k+1);
+ $rs_object->$field_name = $v;
+ }
+
+ return $rs_object;
+ }
+}
+
/* End of file odbc_result.php */
/* Location: ./system/database/drivers/odbc/odbc_result.php */ \ No newline at end of file