Files
CRM-IKZ/app/Core/DB.php
T
2026-07-14 08:19:56 +04:00

37 lines
781 B
PHP

<?php
declare(strict_types=1);
namespace App\Core;
use PDO;
use PDOException;
class DB
{
private static ?PDO $pdo = null;
public static function connection(): PDO
{
if (self::$pdo !== null) {
return self::$pdo;
}
$config = require __DIR__ . '/../../config/db.php';
$dsn = sprintf(
'mysql:host=%s;port=%d;dbname=%s;charset=%s',
$config['host'],
$config['port'],
$config['database'],
$config['charset']
);
self::$pdo = new PDO($dsn, $config['username'], $config['password'], [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
]);
return self::$pdo;
}
}