summaryrefslogtreecommitdiffstats
path: root/system/database/DB_driver.php
diff options
context:
space:
mode:
authorTimothy Warren <tim@timshomepage.net>2012-05-30 13:57:26 +0200
committerTimothy Warren <tim@timshomepage.net>2012-05-30 13:57:26 +0200
commitfd2ceab417bbb696134910ce0eaeca34bea3e1e5 (patch)
tree0eeb742a553a36bf2375793661ff3e7925f792a6 /system/database/DB_driver.php
parent6763522d29416b7db90a6d3c5dceffe1536d8efe (diff)
parent11fd4b8759438f216318e3e1e004f918b88a56ad (diff)
Merge branch 'develop' of git://github.com/EllisLab/CodeIgniter into email
Diffstat (limited to 'system/database/DB_driver.php')
-rw-r--r--system/database/DB_driver.php49
1 files changed, 30 insertions, 19 deletions
diff --git a/system/database/DB_driver.php b/system/database/DB_driver.php
index a0812d4c7..bbb7b7a80 100644
--- a/system/database/DB_driver.php
+++ b/system/database/DB_driver.php
@@ -742,6 +742,35 @@ abstract class CI_DB_driver {
// --------------------------------------------------------------------
/**
+ * "Count All" query
+ *
+ * Generates a platform-specific query string that counts all records in
+ * the specified database
+ *
+ * @param string
+ * @return int
+ */
+ public function count_all($table = '')
+ {
+ if ($table == '')
+ {
+ return 0;
+ }
+
+ $query = $this->query($this->_count_string.$this->escape_identifiers('numrows').' FROM '.$this->protect_identifiers($table, TRUE, NULL, FALSE));
+ if ($query->num_rows() == 0)
+ {
+ return 0;
+ }
+
+ $query = $query->row();
+ $this->_reset_select();
+ return (int) $query->numrows;
+ }
+
+ // --------------------------------------------------------------------
+
+ /**
* Returns an array of table names
*
* @return array
@@ -1395,8 +1424,7 @@ abstract class CI_DB_driver {
/**
* Dummy method that allows Query Builder class to be disabled
- *
- * This function is used extensively by every db driver.
+ * and keep count_all() working.
*
* @return void
*/
@@ -1404,23 +1432,6 @@ abstract class CI_DB_driver {
{
}
- // --------------------------------------------------------------------
-
- /**
- * Destructor
- *
- * Closes the database connection, if needed.
- *
- * @return void
- */
- public function __destruct()
- {
- if ( ! $this->pconnect)
- {
- $this->close();
- }
- }
-
}
/* End of file DB_driver.php */