# Модель `DBConfig` ## Описание Класс предназначен для хранения конфигурации подключения к базе данных. Реализует интерфейс `ISerializable`, позволяющий сериализировать и десериализировать объект класса в строку формата JSON. ## Пространство имен и зависимости ```php namespace goodboyalex\php_db_components_pack\models; use goodboyalex\php_components_pack\classes\Encryptor; use goodboyalex\php_components_pack\interfaces\ISerializable; use goodboyalex\php_db_components_pack\enums\DBDriver; ``` ## Поля | Поле | Тип | Описание | |:-----------:|:----------:|---------------------------------| | `$Host` | `string` | Хост базы данных | | `$Port` | `int` | Порт базы данных | | `$Name` | `string` | Имя базы данных | | `$UserName` | `string` | Имя пользователя базы данных | | `$Password` | `string` | Пароль пользователя базы данных | | `$Driver` | `DBDriver` | Тип драйвера базы данных | | `$Chipper` | `string` | Пароль шифрования | ## Методы ### Конструктор (`__construct`) Создает экземпляр класса с заданными параметрами подключения к базе данных. **Параметры** - `$driver`: тип драйвера базы данных (`DBDriver`) - `$host`: хост базы данных (`string`) - `$port`: порт базы данных (`int`) - `$name`: имя базы данных (`string`) - `$userName`: имя пользователя базы данных (`string`) - `$password`: пароль пользователя базы данных (`string`) - `$chipper`: пароль шифрования (`string`) **Возвращаемое значение**: None --- ### Метод `UnSerialize(string $serialized)` Десериализирует переданный JSON-строку и восстанавливает состояние объекта. **Параметры** - `$serialized`: строка, содержащая сериализированные данные (`string`) **Возвращаемое значение**: None --- ### Метод `Serialize()` Сериализирует состояние объекта в JSON-строку. **Возвращаемое значение** - `string`: сериализированная строка --- ## Примеры использования Пример создания экземпляра класса и его сериализации: ```php $config = new DBConfig( DBDriver::PostgreSQL, 'localhost', 5432, 'my_database', 'admin', 'secret_password', 'encryption_key' ); $serializedData = $config->Serialize(); echo $serializedData; ``` Пример восстановления состояния объекта из сериализированной строки: ```php // Предположим, мы получили сериализированные данные ранее $serializedData = '{"host":"localhost","port":5432,"name":"my_database","user":"admin","password":"encrypted_password","driver":1}'; $config = new DBConfig(); $config->UnSerialize($serializedData); echo $config->Host; // Выведет: localhost ``` ## Дополнительная информация Данный класс является частью пакета `goodboyalex/php_db_components_pack`. Для полноценной работы рекомендуется ознакомиться с документацией по пакету и зависимым компонентам. [На главную](../../index.md)