From ba6f21caeb405c7e8512a09941fefbc97286e45f Mon Sep 17 00:00:00 2001 From: Aleksander Machniak Date: Wed, 21 Nov 2012 19:52:03 +0100 Subject: Framework files moved to lib/Roundcube --- program/include/rcube_db_mysql.php | 159 ------------------------------------- 1 file changed, 159 deletions(-) delete mode 100644 program/include/rcube_db_mysql.php (limited to 'program/include/rcube_db_mysql.php') diff --git a/program/include/rcube_db_mysql.php b/program/include/rcube_db_mysql.php deleted file mode 100644 index 1c5ba1de7..000000000 --- a/program/include/rcube_db_mysql.php +++ /dev/null @@ -1,159 +0,0 @@ - | - +-----------------------------------------------------------------------+ -*/ - - -/** - * Database independent query interface - * - * This is a wrapper for the PHP PDO - * - * @package Framework - * @subpackage Database - */ -class rcube_db_mysql extends rcube_db -{ - public $db_provider = 'mysql'; - - /** - * Driver initialization/configuration - */ - protected function init() - { - // SQL identifiers quoting - $this->options['identifier_start'] = '`'; - $this->options['identifier_end'] = '`'; - } - - /** - * Abstract SQL statement for value concatenation - * - * @return string SQL statement to be used in query - */ - public function concat(/* col1, col2, ... */) - { - $args = func_get_args(); - - if (is_array($args[0])) { - $args = $args[0]; - } - - return 'CONCAT(' . join(', ', $args) . ')'; - } - - /** - * Returns PDO DSN string from DSN array - * - * @param array $dsn DSN parameters - * - * @return string Connection string - */ - protected function dsn_string($dsn) - { - $params = array(); - $result = 'mysql:'; - - if ($dsn['database']) { - $params[] = 'dbname=' . $dsn['database']; - } - - if ($dsn['hostspec']) { - $params[] = 'host=' . $dsn['hostspec']; - } - - if ($dsn['port']) { - $params[] = 'port=' . $dsn['port']; - } - - if ($dsn['socket']) { - $params[] = 'unix_socket=' . $dsn['socket']; - } - - $params[] = 'charset=utf8'; - - if (!empty($params)) { - $result .= implode(';', $params); - } - - return $result; - } - - /** - * Returns driver-specific connection options - * - * @param array $dsn DSN parameters - * - * @return array Connection options - */ - protected function dsn_options($dsn) - { - $result = array(); - - if (!empty($dsn['key'])) { - $result[PDO::MYSQL_ATTR_KEY] = $dsn['key']; - } - - if (!empty($dsn['cipher'])) { - $result[PDO::MYSQL_ATTR_CIPHER] = $dsn['cipher']; - } - - if (!empty($dsn['cert'])) { - $result[PDO::MYSQL_ATTR_SSL_CERT] = $dsn['cert']; - } - - if (!empty($dsn['capath'])) { - $result[PDO::MYSQL_ATTR_SSL_CAPATH] = $dsn['capath']; - } - - if (!empty($dsn['ca'])) { - $result[PDO::MYSQL_ATTR_SSL_CA] = $dsn['ca']; - } - - // Always return matching (not affected only) rows count - $result[PDO::MYSQL_ATTR_FOUND_ROWS] = true; - - 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; - } - -} -- cgit v1.2.3