<?php 
namespace App; 
 
use PDO; 
use PDOException; 
 
class Database 
{ 
    private PDO $pdo; 
 
    public function __construct(array $config) 
    { 
        $dsn = sprintf( 
            'mysql:host=%s;dbname=%s;charset=%s', 
            $config['host'], 
            $config['dbname'], 
            $config['charset'] ?? 'utf8mb4' 
        ); 
        $this->pdo = new PDO($dsn, $config['user'], $config['pass'], [ 
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION 
        ]); 
    } 
 
    public function getPdo(): PDO 
    { 
        return $this->pdo; 
    } 
}
 
 |