BaseModel¶
Описание: Базовый интерфейс для всех моделей данных Определяет контракт для моделей, работающих с данными API Kinopoisk.dev. Включает методы для создания объектов из массивов данных, преобразования в массивы, валидации и сериализации. Все модели данных должны реализовывать этот интерфейс для обеспечения единообразного API.
С версии: 1.0.0
Версия: 2.0.0
Пример:
См. также:
\KinopoiskDev\Models\AbstractBaseModel: Абстрактная реализация базовой модели\KinopoiskDev\Models\Movie: Модель фильма\KinopoiskDev\Models\Person: Модель персоны\KinopoiskDev\Models\Studio: Модель студии
fromArray()¶
Описание: Создает экземпляр модели из массива данных Фабричный метод для создания объекта модели из ассоциативного массива, полученного из API ответа. Должен обрабатывать маппинг полей API на свойства модели и выполнять базовую валидацию данных.
Возвращает: static Экземпляр модели с заполненными данными
Исключения:
ValidationException: При некорректных или неполных данных
Пример:
| PHP | |
|---|---|
fromJson()¶
Описание: Создает объект из JSON строки Десериализует JSON строку в объект модели. Парсит JSON, создает массив данных и использует fromArray для создания объекта.
Параметры:
$json(string): JSON строка с данными объекта
Возвращает: static Экземпляр модели с заполненными данными
Исключения:
\JsonException: При ошибке парсинга JSON строкиValidationException: При некорректных данных после парсинга
Пример:
| PHP | |
|---|---|
toArray()¶
Описание: Преобразует объект в массив Сериализует объект модели в ассоциативный массив для передачи в API или сохранения в базу данных. Поддерживает контроль включения null значений.
Параметры:
$includeNulls(bool): Включать ли null значения в результат (по умолчанию true)
Возвращает: array<string, mixed> Данные объекта в виде ассоциативного массива
Пример:
| PHP | |
|---|---|
validate()¶
Описание: Валидирует данные модели Проверяет корректность данных модели согласно бизнес-правилам и ограничениям. Может использовать атрибуты Validation для автоматической валидации свойств.
Возвращает: bool True если данные валидны, false в противном случае
Исключения:
ValidationException: При ошибке валидации с детальным описанием проблем
Пример:
| PHP | |
|---|---|
toJson()¶
Описание: Возвращает JSON представление объекта Сериализует объект модели в JSON строку для передачи по сети или сохранения в файл. Поддерживает настройку флагов кодирования JSON.
Параметры:
$flags(int): Флаги для json_encode (по умолчанию JSON_THROW_ON_ERROR | JSON_UNESCAPED_UNICODE)
Возвращает: string JSON строка с данными объекта
Исключения:
\JsonException: При ошибке сериализации в JSON
Пример: