summaryrefslogtreecommitdiff
path: root/program/include/rcube_db_mysql.php
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2012-07-08 10:32:13 +0200
committerAleksander Machniak <alec@alec.pl>2012-07-08 10:32:13 +0200
commitc389a85978bc5cf8f0f9d06c58664a35c4746447 (patch)
tree17ad45365266e1c8450047927a6b016257a62b9f /program/include/rcube_db_mysql.php
parentd239ee6df5ce530b7c978628919e6134e3e795d4 (diff)
Add get_variable() implementation
Diffstat (limited to 'program/include/rcube_db_mysql.php')
-rw-r--r--program/include/rcube_db_mysql.php23
1 files changed, 23 insertions, 0 deletions
diff --git a/program/include/rcube_db_mysql.php b/program/include/rcube_db_mysql.php
index 84a324701..71f81956a 100644
--- a/program/include/rcube_db_mysql.php
+++ b/program/include/rcube_db_mysql.php
@@ -90,4 +90,27 @@ class rcube_db_mysql extends rcube_db
return $result;
}
+ /**
+ * Get database runtime variables
+ *
+ * @param string $varname Variable name
+ * @param mixed $default Default value if variable is not set
+ *
+ * @return mixed Variable value or default
+ */
+ public function get_variable($varname, $default = null)
+ {
+ if (!isset($this->variables)) {
+ $this->variables = array();
+
+ $result = $this->query('SHOW VARIABLES');
+
+ while ($sql_arr = $this->fetch_array($result)) {
+ $this->variables[$row[0]] = $row[1];
+ }
+ }
+
+ return isset($this->variables[$varname]) ? $this->variables[$varname] : $default;
+ }
+
}