]> git.mxchange.org Git - friendica.git/blobdiff - src/Database/DBA.php
Rename DBA::any_value_fallback to DBA::anyValueFallback
[friendica.git] / src / Database / DBA.php
index 28eedec151cd41d378f876017da81db8d4a84d6e..79c4422718c6057fb9280a011472ceb19451b42d 100644 (file)
@@ -8,13 +8,17 @@ namespace Friendica\Database;
 
 use Friendica\Core\System;
 use Friendica\Util\DateTimeFormat;
+use mysqli;
+use PDO;
+use PDOException;
+use PDOStatement;
 
 /**
  * @class MySQL database class
  *
  * This class is for the low level database stuff that does driver specific things.
  */
-class dba
+class DBA
 {
        public static $connected = false;
 
@@ -46,6 +50,7 @@ class dba
                self::$db_name = $db;
                self::$db_charset = $charset;
 
+               $port = 0;
                $serveraddr = trim($serveraddr);
 
                $serverdata = explode(':', $serveraddr);
@@ -69,7 +74,7 @@ class dba
                        self::$driver = 'pdo';
                        $connect = "mysql:host=".$server.";dbname=".$db;
 
-                       if (isset($port)) {
+                       if ($port > 0) {
                                $connect .= ";port=".$port;
                        }
 
@@ -85,9 +90,15 @@ class dba
                        }
                }
 
-               if (!self::$connected && class_exists('mysqli')) {
+               if (!self::$connected && class_exists('\mysqli')) {
                        self::$driver = 'mysqli';
-                       self::$db = @new mysqli($server, $user, $pass, $db, $port);
+
+                       if ($port > 0) {
+                               self::$db = @new mysqli($server, $user, $pass, $db, $port);
+                       } else {
+                               self::$db = @new mysqli($server, $user, $pass, $db);
+                       }
+
                        if (!mysqli_connect_errno()) {
                                self::$connected = true;
 
@@ -277,7 +288,7 @@ class dba
         * @param string $sql An SQL string without the values
         * @return string The input SQL string modified if necessary.
         */
-       public static function any_value_fallback($sql) {
+       public static function anyValueFallback($sql) {
                $server_info = self::server_info();
                if (version_compare($server_info, '5.7.5', '<') ||
                        (stripos($server_info, 'MariaDB') !== false)) {
@@ -386,7 +397,7 @@ class dba
                }
 
                $sql = self::clean_query($sql);
-               $sql = self::any_value_fallback($sql);
+               $sql = self::anyValueFallback($sql);
 
                $orig_sql = $sql;
 
@@ -640,6 +651,10 @@ class dba
 
                $fields = [];
 
+               if (empty($condition)) {
+                       return DBStructure::existsTable($table);
+               }
+
                reset($condition);
                $first_key = key($condition);
                if (!is_int($first_key)) {
@@ -689,7 +704,7 @@ class dba
         *
         * @return int Number of rows
         */
-       public static function affected_rows() {
+       public static function affectedRows() {
                return self::$affected_rows;
        }