Spec-Zone.ru › Symfony 4.1
ObjectNormalizer class ObjectNormalizer extends AbstractObjectNormalizer
Преобразует объекты в массивы и обратно, используя компонент PropertyAccess.
Свойства Константы CIRCULAR_REFERENCE_LIMIT OBJECT_TO_POPULATE GROUPS ATTRIBUTES ALLOW_EXTRA_ATTRIBUTES DEFAULT_CONSTRUCTOR_ARGUMENTS ENABLE_MAX_DEPTH DEPTH_KEY_PATTERN DISABLE_TYPE_ENFORCEMENT
Свойства Методы object|null extractObjectToPopulate (string $class, array $context, string $key = null) Извлечь поле object_to_populate из контекста, если оно существует и является экземпляром указанного класса $class.
из ObjectToPopulateTrait setSerializer (SerializerInterface $serializer) Устанавливает сериализатор.
из SerializerAwareTrait __construct (ClassMetadataFactoryInterface $classMetadataFactory = null, NameConverterInterface $nameConverter = null, PropertyAccessorInterface $propertyAccessor = null, PropertyTypeExtractorInterface $propertyTypeExtractor = null, ClassDiscriminatorResolverInterface $classDiscriminatorResolver = null) Устанавливает используемый {@link ClassMetadataFactoryInterface}.
AbstractNormalizer setCircularReferenceLimit (int $circularReferenceLimit) Установить предел циклических ссылок.
из AbstractNormalizer AbstractNormalizer setCircularReferenceHandler (callable $circularReferenceHandler) Установить обработчик циклических ссылок.
из AbstractNormalizer AbstractNormalizer setCallbacks (array $callbacks) Установить колбэки нормализации.
из AbstractNormalizer AbstractNormalizer setIgnoredAttributes (array $ignoredAttributes) Установить игнорируемые атрибуты для нормализации и денормализации.
из AbstractNormalizer bool hasCacheableSupportsMethod ()
bool isCircularReference (object $object, array $context) Определяет, достигнут ли предел циклических ссылок.
из AbstractNormalizer mixed handleCircularReference (object $object) Обрабатывает циклическую ссылку.
из AbstractNormalizer string[]|AttributeMetadataInterface []|bool getAllowedAttributes (string|object $classOrObject, array $context, bool $attributesAsString = false) Получает атрибуты для нормализации с использованием групп.
bool isAllowedAttribute (object|string $classOrObject, string $attribute, string|null $format = null, array $context = array()) Разрешен ли данный атрибут?
из AbstractNormalizer array prepareForDenormalization (object|array $data) Нормализует заданные данные в массив. Особенно полезно при денормализации.
из AbstractNormalizer ReflectionMethod |null getConstructor (array $data, string $class, array $context, ReflectionClass $reflectionClass, array|bool $allowedAttributes) Возвращает метод для создания объекта. Этот метод должен быть либо конструктором объекта, либо статическим.
из AbstractNormalizer object instantiateObject (array $data, string $class, array $context, ReflectionClass $reflectionClass, array|bool $allowedAttributes, string $format = null) Создает объект, используя параметры конструктора, если необходимо.
из AbstractObjectNormalizer array createChildContext (array $parentContext, string $attribute) из AbstractNormalizer bool supportsNormalization (mixed $data, string $format = null) Проверяет, поддерживается ли данный класс для нормализации данным нормализатором.
из AbstractObjectNormalizer array|string|int|float|bool normalize (mixed $object, string $format = null, array $context = array()) Нормализует объект в набор массивов/скаляров.
из AbstractObjectNormalizer string[] getAttributes (object $object, string|null $format = null, array $context) Получает и кеширует атрибуты для данного объекта, формата и контекста.
из AbstractObjectNormalizer string[] extractAttributes (object $object, string|null $format = null, array $context = array()) Извлекает атрибуты для нормализации из класса данного объекта, формата и контекста.
mixed getAttributeValue (object $object, string $attribute, string|null $format = null, array $context = array()) Получает значение атрибута.
void setMaxDepthHandler (callable|null $handler) Устанавливает функцию-обработчик, которая вызывается при достижении максимальной глубины.
из AbstractObjectNormalizer bool supportsDenormalization (mixed $data, string $type, string $format = null) Проверяет, поддерживается ли данный класс для денормализации данным нормализатором.
из AbstractObjectNormalizer object denormalize (mixed $data, string $class, string $format = null, array $context = array()) Денормализует данные обратно в объект заданного класса.
из AbstractObjectNormalizer setAttributeValue (object $object, string $attribute, mixed $value, string|null $format = null, array $context = array()) Устанавливает значение атрибута.
Подробности Извлечь поле object_to_populate из контекста, если оно существует и является экземпляром заданного класса $class.
Параметры string $class Класс, которому должен принадлежать объект array $context Контекст денормализации string $key Ключ, по которому искать объект для заполнения. Поддерживает обратную совместимость с AbstractNormalizer.
Значение результата object|null Объект, если проверка пройдена, иначе null
Устанавливает сериализатор.
Параметры Устанавливает {@link ClassMetadataFactoryInterface} для использования.
Параметры AbstractNormalizer
setCircularReferenceLimit(int $circularReferenceLimit)
Установить ограничение циклической ссылки.
Параметры int $circularReferenceLimit Предел итераций для одного и того же объекта
Значение результата AbstractNormalizer
setCircularReferenceHandler(callable $circularReferenceHandler)
Установить обработчик циклической ссылки.
Параметры callable $circularReferenceHandler
Значение результата Установить колбэки нормализации.
Параметры array $callbacks Помощь в нормализации результата
Значение результата Исключения AbstractNormalizer
setIgnoredAttributes(array $ignoredAttributes)
Установить игнорируемые атрибуты для нормализации и денормализации.
Параметры Значение результата bool
hasCacheableSupportsMethod()
Значение результата protected bool
isCircularReference(object $object, array $context)
Определяет, достигнут ли предел циклической ссылки.
Параметры object $object array $context
Значение результата Исключения protected mixed
handleCircularReference(object $object)
Обрабатывает циклическую ссылку.
Если установлен обработчик циклических ссылок, он будет вызван. В противном случае будет выброшено исключение {@class CircularReferenceException}.
Параметры Значение результата Исключения protected string[]|AttributeMetadataInterface []|bool
getAllowedAttributes(string|object $classOrObject, array $context, bool $attributesAsString = false)
Получает разрешенные атрибуты для нормализации с использованием групп.
Параметры string|object $classOrObject array $context bool $attributesAsString Если false, возвращает массив {@link AttributeMetadataInterface}
Значение результата Исключения LogicException если переменная контекста 'allow_extra_attributes' равна false и фабрика метаданных класса не предоставлена
protected bool
isAllowedAttribute(object|string $classOrObject, string $attribute, string|null $format = null, array $context = array())
Разрешен ли этот атрибут?
Параметры object|string $classOrObject string $attribute string|null $format array $context
Значение результата protected array
prepareForDenormalization(object|array $data)
Нормализует заданные данные в массив. Особенно полезно во время процесса денормализации.
Параметры Значение результата protected ReflectionMethod |null
getConstructor(array $data, string $class, array $context, ReflectionClass $reflectionClass, array|bool $allowedAttributes)
Возвращает метод, используемый для создания объекта. Этот метод должен быть либо конструктором объекта, либо статическим.
Параметры array $data string $class array $context ReflectionClass $reflectionClass array|bool $allowedAttributes
Значение результата protected объект
instantiateObject(array $data, string $class, array $context, ReflectionClass $reflectionClass, array|bool $allowedAttributes, string $format = null)
Инициализирует объект с использованием параметров конструктора при необходимости.
Этот метод также позволяет денормализовать данные в существующий объект, если он присутствует в контексте с объектом object_to_populate. Этот объект удаляется из контекста перед возвращением, чтобы избежать побочных эффектов при рекурсивной нормализации графа объектов.
Параметры array $data string $class array $context ReflectionClass $reflectionClass array|bool $allowedAttributes string $format
Значение возврата Исключения protected array
createChildContext(array $parentContext, string $attribute)
Параметры array $parentContext string $attribute
Значение возврата bool
supportsNormalization(mixed $data, string $format = null)
Проверяет, поддерживается ли данный класс для нормализации этим нормализатором.
Параметры mixed $data Данные для нормализации string $format Формат (де)сериализации
Значение возврата array|string|int|float|bool
normalize(mixed $object, string $format = null, array $context = array())
Нормализует объект в набор массивов/скаляров.
Параметры mixed $object Объект для нормализации string $format Формат кодирования результата нормализации array $context Параметры контекста для нормализатора
Значение возврата array|string|int|float|bool
Исключения InvalidArgumentException Возникает, когда переданный объект не является допустимым типом для нормализатора CircularReferenceException Возникает, когда нормализатор обнаруживает циклическую ссылку, которую обработчик циклических ссылок не может исправить LogicException Возникает, когда нормализатор не вызывается в ожидаемом контексте
protected string[]
getAttributes(object $object, string|null $format = null, array $context)
Получает и кэширует атрибуты для данного объекта, формата и контекста.
Параметры object $object string|null $format array $context
Значение возврата Извлекает атрибуты для нормализации из класса данного объекта, формата и контекста.
Параметры object $object string|null $format array $context
Значение возврата protected mixed
getAttributeValue(object $object, string $attribute, string|null $format = null, array $context = array())
Получает значение атрибута.
Параметры object $object string $attribute string|null $format array $context
Значение возврата void
setMaxDepthHandler(callable|null $handler)
Устанавливает обработчик функций, который будет вызываться при достижении максимальной глубины.
Параметры Значение возврата bool
supportsDenormalization(mixed $data, string $type, string $format = null)
Проверяет, поддерживается ли данный класс для денормализации этим нормализатором.
Параметры mixed $data Данные для денормализации string $type Класс, в который должны быть денормализованы данные string $format Формат десериализации
Значение возврата объект
denormalize(mixed $data, string $class, string $format = null, array $context = array())
Денормализует данные обратно в объект данного класса.
Параметры mixed $data Данные для восстановления string $class Ожидаемый класс для создания экземпляра string $format Формат извлеченных данных array $context Параметры, доступные денормализатору
Значение возврата Исключения protected
setAttributeValue(object $object, string $attribute, mixed $value, string|null $format = null, array $context = array())
Устанавливает значение атрибута.
Параметры object $object string $attribute mixed $value string|null $format array $context