| Server IP : 202.61.199.114 / Your IP : 216.73.217.139 Web Server : nginx/1.22.1 System : Linux de.arni-solutions.de 6.1.0-49-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64 User : web20 ( 1018) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/clients/client2/web30/web/app/ |
Upload File : |
<?php
declare(strict_types=1);
namespace App;
use PDO;
use PDOException;
final class Database
{
private static ?PDO $pdo = null;
public static function connection(): PDO
{
if (self::$pdo !== null) {
return self::$pdo;
}
$dsn = sprintf(
'mysql:host=%s;port=%s;dbname=%s;charset=%s',
Config::get('db.host'),
Config::get('db.port'),
Config::get('db.name'),
Config::get('db.charset', 'utf8mb4')
);
try {
self::$pdo = new PDO($dsn, (string) Config::get('db.user'), (string) Config::get('db.pass'), [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false,
]);
} catch (PDOException $e) {
throw new \RuntimeException('Database connection failed.');
}
return self::$pdo;
}
}