Browse Source

Added __debugInfo() to Driver

Robert 11 years ago
parent
commit
bec4a39e09
1 changed files with 28 additions and 0 deletions
  1. 28 0
      src/Database/Driver.php

+ 28 - 0
src/Database/Driver.php

@@ -316,4 +316,32 @@ abstract class Driver {
 		$this->_connection = null;
 	}
 
+/**
+ * Returns an array that can be used to describe the internal state of this
+ * object.
+ *
+ * @return array
+ */
+    public function __debugInfo() {
+		$secrets = [
+			'password' => '*****',
+			'login' => '*****',
+			'host' => '*****',
+			'database' => '*****',
+			'port' => '*****',
+			'prefix' => '*****',
+			'schema' => '*****'
+		];
+		$replace = array_intersect_key($secrets, $this->_config);
+                
+        return [
+            '_baseConfig' => $replace + $this->_baseConfig,
+            '_config' => $replace + $this->_config,
+            '_autoQuoting' => $this->_autoQuoting,
+            '_startQuote' => $this->_startQuote,
+            '_endQuote' => $this->_endQuote,
+            '_schemaDialect' => get_class($this->_schemaDialect)
+        ];
+    }
+
 }