diff options
Diffstat (limited to 'src/Database.php')
-rw-r--r-- | src/Database.php | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/Database.php b/src/Database.php new file mode 100644 index 0000000..3fff863 --- /dev/null +++ b/src/Database.php @@ -0,0 +1,36 @@ +<?php + +namespace App; + +use PDO; +use PDOStatement; + +class Database +{ + use Singleton; + + private \PDO $connection; + + public function __construct() + { + #$driver = $_ENV['DB_DRIVER'] ?? 'pgsql'; + $host = $_ENV['DB_HOST'] ?? 'localhost'; + $port = $_ENV['DB_PORT'] ?? 5432; + $dbname = $_ENV['DB_NAME']; + $user = $_ENV['DB_USER']; + $password = $_ENV['DB_PASSWORD']; + + $this->connection = new \PDO("pgsql:host=$host;port=$port;dbname=$dbname", $user, $password); + } + + /** + * @param array<mixed> $parameters + */ + public function query(string $query, array $parameters = []): \PDOStatement|false + { + $statement = $this->connection->prepare($query); + $statement->execute($parameters); + + return $statement; + } +} |