| 1234567891011121314151617181920212223242526 |
- <?php
- namespace Libs;
- final class Database
- {
- public static function pdo(): \PDO
- {
- $host = $_ENV['DB_HOST'] ?? '127.0.0.1';
- $port = $_ENV['DB_PORT'] ?? '5432';
- $name = $_ENV['DB_NAME'] ?? '';
- $user = $_ENV['DB_USER'] ?? '';
- $pass = $_ENV['DB_PASS'] ?? '';
- if ($name === '') {
- throw new \RuntimeException('DB_NAME is not configured.');
- }
- $dsn = sprintf('pgsql:host=%s;port=%s;dbname=%s', $host, $port, $name);
- return new \PDO($dsn, $user, $pass, [
- \PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION,
- \PDO::ATTR_DEFAULT_FETCH_MODE => \PDO::FETCH_ASSOC,
- ]);
- }
- }
|