conn = $this->connectWithMySQL($config['args']); } catch (PDOException $e) { throw new PDOException("Database error: " . $e->getMessage()); } } private function connectWithMySQL(array $args): object { $host = $args['host']; $database = $args['database']; $charset = $args['charset']; $user = $args['user']; $password = $args['password']; $dsn = "mysql:host=$host;dbname=$database;charset=$charset"; $options = [ PDO::ATTR_PERSISTENT => true, ]; return new PDO($dsn, $user, $password, $options); } }