Download the PHP package fi1a/hydrator without Composer
On this page you can find all versions of the php package fi1a/hydrator. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download fi1a/hydrator
More information about fi1a/hydrator
Files in fi1a/hydrator
Package hydrator
Short Description PHP hydrator - это библиотека для переноса данных из массива в объект и из объекта в массив
License MIT
Homepage https://github.com/fi1a/hydrator
Informations about the package hydrator
PHP hydrator - это библиотека для переноса данных из массива в объект и из объекта в массив
Библиотека позволяет переносить данные из массива в объект и обратно.
Возможны следующие операции:
- конвертация данных в
ArrayизObject; - заполнить данными
ObjectизArray.
Установка
Установить этот пакет можно как зависимость, используя Composer.
Hydrator. Перенос данных из массива в объект
Класс Fi1a\Hydrator\Hydrator() позволяет заполнить данными объект.
Пример:
Метод hydrate создает объект переданного класса, для заполнения данными уже существующего объекта нужно использовать
метод hydrateModel:
Поведение Fi1a\Hydrator\Hydrates\Hydrate
Служит для переноса данных из массива в объект без вызова методов сеттеров объекта. Является поведением по умолчанию.
Поведение Fi1a\Hydrator\Hydrates\HydrateCallSetters
Служит для переноса данных из массива в объект с вызовом сеттеров.
Поведение Fi1a\Hydrator\Hydrates\HydratePublicCallSetters
Служит для переноса данных из массива в объект с вызовом только публичных сеттеров.
Extractor. Перенос данных из объекта в массив
Класс Fi1a\Hydrator\Extractor() осуществляет извлечение данных из объекта в массив.
Пример:
Можно указать какие свойства нужно извлечь с помощью аргумента $keys метода Fi1a\Hydrator\Extractor::extract:
Поведение Fi1a\Hydrator\Extracts\ExtractPublicCallGetters
Осуществляет перенос данных из объекта в массив с вызовом публичных геттеров.
Если ключи массива в метод Fi1a\Hydrator\Extractor::extract не переданы, будут получены все публичные свойства объекта
и свойства, имеющие публичные геттеры, иначе будут получены только переданные свойства. Является поведением по умолчанию.
Поведение Fi1a\Hydrator\Extracts\ExtractCallGetters
Осуществляет перенос данных из объекта в массив с вызовом геттеров.
Если ключи массива в метод Fi1a\Hydrator\Extractor::extract не переданы, будут получены все свойства объекта и вызваны их геттеры,
иначе будут получены только переданные свойства.
Поведение Fi1a\Hydrator\Extracts\ExtractPublic
Осуществляет перенос публичных свойств из объекта в массив.
Если ключи массива в метод Fi1a\Hydrator\Extractor::extract не переданы, будут получены все публичные свойства объекта,
иначе будут получены только переданные свойства.
Поведение Fi1a\Hydrator\Extracts\Extract
Осуществляет перенос данных из объекта в массив.
Если ключи массива в метод Fi1a\Hydrator\Extractor::extract не переданы, будут получены все свойства объекта,
иначе будут получены только переданные свойства.
Наименование ключей массива
Для определения наименования ключей массива используются классы реализующие интерфейс Fi1a\Hydrator\KeyName\KeyNameInterface.
Объект данного класса передается в конструктор переноса данных из массива в объект и обратно.
Fi1a\Hydrator\KeyName\Camelizeпреобразует в "stringHelper" название ключей массива;Fi1a\Hydrator\KeyName\Humanizeпреобразует в "string_helper" название ключей массива;
По умолчанию используется "stringHelper" название ключей массива (Fi1a\Hydrator\KeyName\Camelize).
Пример переноса данных из массива в объект с наименованием ключей массива "string_helper":
Пример переноса данных из объекта в массив с наименованием ключей массива "string_helper":