20250805-1
This commit is contained in:
61
help/class_desc/enums/DBDriver.md
Normal file
61
help/class_desc/enums/DBDriver.md
Normal file
@@ -0,0 +1,61 @@
|
||||
# Перечисление `DBDriver`
|
||||
|
||||
Перечисление представляет собой набор констант, определяющих типы драйверов баз данных, поддерживаемых системой.
|
||||
Используется совместно с библиотекой PHP PDO для идентификации различных типов СУБД.
|
||||
|
||||
## Основная информация
|
||||
|
||||
- **Автор**: Александр Бабаев
|
||||
- **Версия**: 1.0
|
||||
- **Дата начала поддержки**: с версии 1.0
|
||||
|
||||
## Пространство имен и зависимости
|
||||
|
||||
```php
|
||||
namespace goodboyalex\php_db_components_pack\enums;
|
||||
|
||||
use goodboyalex\php_components_pack\traits\EnumExtensionsTrait;
|
||||
```
|
||||
|
||||
## Возможные значения перечисления
|
||||
|
||||
| Константа | Значение | Описание |
|
||||
|:------------:|:--------:|-----------------------|
|
||||
| `MySQL` | `0` | Драйвер MySQL |
|
||||
| `MSSQL` | `1` | Драйвер MS SQL Server |
|
||||
| `PostgreSQL` | `2` | Драйвер PostgreSQL |
|
||||
| `OracleDB` | `3` | Драйвер Oracle |
|
||||
| `SQLite` | `4` | Драйвер SQLite |
|
||||
|
||||
## Особенности реализации
|
||||
|
||||
Используется trait `EnumExtensionsTrait`, предоставляющий дополнительные методы для работы с перечислениями, такие как
|
||||
преобразование значений в целые числа и обратно.
|
||||
|
||||
## Использование
|
||||
|
||||
Примеры использования перечисления:
|
||||
|
||||
```php
|
||||
use goodboyalex\php_db_components_pack\enums\DBDriver;
|
||||
|
||||
// Получение значения по имени
|
||||
$dbType = DBDriver::MySQL;
|
||||
|
||||
// Проверка типа драйвера
|
||||
if ($dbType === DBDriver::MySQL)
|
||||
echo "Это MySQL";
|
||||
```
|
||||
|
||||
## Совместимость
|
||||
|
||||
Перечисление совместимо с современными версиями PHP, начиная с версии 8.1, поддерживающей нативные перечисления (
|
||||
`enum`). Если используется более ранняя версия PHP, возможно потребуется альтернативная реализация на основе классов или
|
||||
сторонних пакетов.
|
||||
|
||||
## Вывод
|
||||
|
||||
Этот класс является частью библиотеки `goodboyalex/php_db_components_pack` и предназначен для унификации работы с
|
||||
различными системами управления базами данных посредством стандартного интерфейса PDO.
|
||||
|
||||
[На гравную](../../index.md)
|
82
help/class_desc/enums/DBOperation.md
Normal file
82
help/class_desc/enums/DBOperation.md
Normal file
@@ -0,0 +1,82 @@
|
||||
# Перечисление `DBOperation`
|
||||
|
||||
Перечисление `DBOperation` представляет собой перечень возможных операций, выполняемых над базой данных. Эти операции
|
||||
используются для обозначения действий, связанных с управлением данными и таблицами, такими как вставка, получение,
|
||||
обновление, удаление и подсчет элементов, а также создание и удаление таблиц.
|
||||
|
||||
## Основная информация
|
||||
|
||||
- **Автор**: Александр Бабаев
|
||||
- **Версия**: 1.0
|
||||
- **Дата начала поддержки**: с версии 1.0
|
||||
|
||||
## Пространство имен и зависимости
|
||||
|
||||
```php
|
||||
namespace goodboyalex\php_db_components_pack\enums;
|
||||
|
||||
use goodboyalex\php_components_pack\traits\EnumExtensionsTrait;
|
||||
```
|
||||
|
||||
## Возможные значения перечисления
|
||||
|
||||
1. **Insert** (`case Insert = 0`)
|
||||
Операция вставки данных в базу данных.
|
||||
|
||||
2. **Get** (`case Get = 1`)
|
||||
Операция получения данных из базы данных.
|
||||
|
||||
3. **Update** (`case Update = 2`)
|
||||
Операция обновления существующего элемента в базе данных.
|
||||
|
||||
4. **Delete** (`case Delete = 3`)
|
||||
Операция удаления элемента из базы данных.
|
||||
|
||||
5. **Count** (`case Count = 4`)
|
||||
Операция подсчёта количества элементов в базе данных.
|
||||
|
||||
6. **CreateTable** (`case CreateTable = 5`)
|
||||
Операция создания новой таблицы в базе данных.
|
||||
|
||||
7. **DropTable** (`case DropTable = 6`)
|
||||
Операция удаления существующей таблицы из базы данных.
|
||||
|
||||
## Особенности
|
||||
|
||||
- **Наследует трейт `EnumExtensionsTrait`**: Предоставляет дополнительный функционал для расширения возможностей работы
|
||||
с перечислениями, включая вспомогательные методы для удобного обращения к элементам перечисления.
|
||||
|
||||
## Использование перечисления
|
||||
|
||||
Пример использования перечисления в вашем приложении:
|
||||
|
||||
```php
|
||||
use goodboyalex\php_db_components_pack\enums\DBOperation;
|
||||
|
||||
// Определили операцию вставки
|
||||
$operation = DBOperation::Insert;
|
||||
|
||||
switch ($operation) {
|
||||
case DBOperation::Insert:
|
||||
echo "Операция вставки данных.";
|
||||
break;
|
||||
case DBOperation::Get:
|
||||
echo "Операция получения данных.";
|
||||
break;
|
||||
default:
|
||||
echo "Другая операция.";
|
||||
}
|
||||
```
|
||||
|
||||
## Совместимость
|
||||
|
||||
Перечисление совместимо с современными версиями PHP, начиная с версии 8.1, поддерживающей нативные перечисления (
|
||||
`enum`). Если используется более ранняя версия PHP, возможно потребуется альтернативная реализация на основе классов или
|
||||
сторонних пакетов.
|
||||
|
||||
## Вывод
|
||||
|
||||
Этот класс является частью библиотеки `goodboyalex/php_db_components_pack` и предназначен для унификации работы с
|
||||
различными системами управления базами данных посредством стандартного интерфейса PDO.
|
||||
|
||||
[На гравную](../../index.md)
|
77
help/class_desc/enums/DBType.md
Normal file
77
help/class_desc/enums/DBType.md
Normal file
@@ -0,0 +1,77 @@
|
||||
# Перечисление `DBType`
|
||||
|
||||
Перечисление `DBType` описывает возможные типы данных, используемые в системах управления базами данных (СУБД). Оно
|
||||
позволяет удобно сопоставлять стандартные типы данных PHP с типом данных, соответствующим выбранной СУБД.
|
||||
|
||||
## Основная информация
|
||||
|
||||
- **Автор**: Александр Бабаев
|
||||
- **Версия**: 1.0
|
||||
- **Дата начала поддержки**: с версии 1.0
|
||||
|
||||
## Пространство имен и зависимости
|
||||
|
||||
```php
|
||||
namespace goodboyalex\php_db_components_pack\enums;
|
||||
|
||||
use goodboyalex\php_components_pack\traits\EnumExtensionsTrait;
|
||||
```
|
||||
|
||||
## Элементы перечисления
|
||||
|
||||
1. **INT** (`case INT = 0`)
|
||||
Целочисленный тип данных.
|
||||
|
||||
2. **FLOAT** (`case FLOAT = 1`)
|
||||
Тип данных с плавающей точкой.
|
||||
|
||||
3. **STRING** (`case STRING = 2`)
|
||||
Строковый тип данных.
|
||||
|
||||
4. **BOOL** (`case BOOL = 3`)
|
||||
Булевый тип данных.
|
||||
|
||||
5. **DATE** (`case DATE = 4`)
|
||||
Дата-время.
|
||||
|
||||
6. **ARRAY** (`case ARRAY = 5`)
|
||||
Массивы или коллекции данных.
|
||||
|
||||
## Особенности
|
||||
|
||||
- **Наследует трейт `EnumExtensionsTrait`**: Трейт расширяет функциональные возможности перечислений, предоставляя
|
||||
удобные методы для манипуляции значениями перечисления.
|
||||
|
||||
- **Статический метод `ToSQLType`**: Позволяет перевести тип данных из PHP в эквивалентный тип данных соответствующей
|
||||
СУБД. Например, если указана СУБД MySQL, метод вернёт правильный SQL-тип, исходя из указанного типа данных.
|
||||
|
||||
## Использование перечисления
|
||||
|
||||
Пример использования перечисления для перевода типа данных:
|
||||
|
||||
```php
|
||||
use goodboyalex\php_db_components_pack\enums\DBType;
|
||||
use goodboyalex\php_db_components_pack\enums\DBDriver;
|
||||
|
||||
// Определение типа данных и драйвера
|
||||
$dataType = DBType::STRING;
|
||||
$driver = DBDriver::MySQL;
|
||||
|
||||
// Преобразование типа данных в SQL-эквивалент
|
||||
$sqlType = DBType::ToSQLType($driver, $dataType);
|
||||
|
||||
echo "Эквивалентный SQL-тип: $sqlType"; // Output: VARCHAR
|
||||
```
|
||||
|
||||
## Совместимость
|
||||
|
||||
Перечисление совместимо с современными версиями PHP, начиная с версии 8.1, поддерживающей нативные перечисления (
|
||||
`enum`). Если используется более ранняя версия PHP, возможно потребуется альтернативная реализация на основе классов или
|
||||
сторонних пакетов.
|
||||
|
||||
## Вывод
|
||||
|
||||
Этот класс является частью библиотеки `goodboyalex/php_db_components_pack` и предназначен для унификации работы с
|
||||
различными системами управления базами данных посредством стандартного интерфейса PDO.
|
||||
|
||||
[На гравную](../../index.md)
|
Reference in New Issue
Block a user