summaryrefslogtreecommitdiff
path: root/src/Database/DatabaseServiceProvider.php
diff options
context:
space:
mode:
authormsquare <msquare@notrademark.de>2017-11-12 13:25:56 +0100
committerGitHub <noreply@github.com>2017-11-12 13:25:56 +0100
commitebc973bf221bfbde327868975221e62704e4cb99 (patch)
tree9011a160f3d6f9cae37fc02836e7d6e8c25242ca /src/Database/DatabaseServiceProvider.php
parent801c17aa6cef91be988a25a90442be8d2078a70d (diff)
parentad948bdd3201e922b626a736b0122533bdd37cae (diff)
Merge pull request #349 from MyIgel/master
Changed container to Illuminate/Container and added service providers
Diffstat (limited to 'src/Database/DatabaseServiceProvider.php')
-rw-r--r--src/Database/DatabaseServiceProvider.php31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/Database/DatabaseServiceProvider.php b/src/Database/DatabaseServiceProvider.php
new file mode 100644
index 00000000..364816cc
--- /dev/null
+++ b/src/Database/DatabaseServiceProvider.php
@@ -0,0 +1,31 @@
+<?php
+
+namespace Engelsystem\Database;
+
+use Engelsystem\Container\ServiceProvider;
+use Exception;
+use PDO;
+
+class DatabaseServiceProvider extends ServiceProvider
+{
+ public function register()
+ {
+ $config = $this->app->get('config');
+ Db::connect(
+ 'mysql:host=' . $config->get('database')['host'] . ';dbname=' . $config->get('database')['db'] . ';charset=utf8',
+ $config->get('database')['user'],
+ $config->get('database')['pw']
+ ) || $this->exitOnError();
+
+ Db::getPdo()->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
+ Db::getPdo()->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
+ }
+
+ /**
+ * @throws Exception
+ */
+ protected function exitOnError()
+ {
+ throw new Exception('Error: Unable to connect to database');
+ }
+}