protected function attributesFromProperties(array $properties): array
    {
        // First, we'll only keep the entities that are part of the Entity's
        // attributes
        $managedProperties = $this->getManagedProperties();

        $properties = array_only($properties, $managedProperties);

        // If the entity does not uses the attributes array to store
        // part of its attributes, we'll directly return the properties
        if (!$this->entityMap->usesAttributesArray()) {
            return $properties;
        }

        $arrayName = $this->entityMap->getAttributesArrayName();

        if (!array_key_exists($arrayName, $properties)) {
            throw new MappingException("Property $arrayName not set on object of type ".$this->getEntityClass());
        }

        if (!is_array($properties[$arrayName])) {
            throw new MappingException("Property $arrayName should be an array.");
        }

        $attributes = $properties[$arrayName];

        unset($properties[$arrayName]);

        return $properties + $attributes;
    }
protected function attributesFromProperties(array $properties): array
    {
        // First, we'll only keep the entities that are part of the Entity's
        // attributes
        $managedProperties = $this->getManagedProperties();

        $properties = array_only($properties, $managedProperties);

        // If the entity does not uses the attributes array to store
        // part of its attributes, we'll directly return the properties
        if (!$this->entityMap->usesAttributesArray()) {
            return $properties;
        }

        $arrayName = $this->entityMap->getAttributesArrayName();

        if (!array_key_exists($arrayName, $properties)) {
            throw new MappingException("Property $arrayName not set on object of type ".$this->getEntityClass());
        }

        if (!is_array($properties[$arrayName])) {
            throw new MappingException("Property $arrayName should be an array.");
        }

        $attributes = $properties[$arrayName];

        unset($properties[$arrayName]);

        return $properties + $attributes;
    }
protected function attributesFromProperties ( array $ properties ) : array { // First, we'll only keep the entities that are part of the Entity's // attributes $ managedProperties = $ this -> getManagedProperties ( ) ; $ properties = array_only ( $ properties , $ managedProperties ) ; // If the entity does not uses the attributes array to store // part of its attributes, we'll directly return the properties if ( ! $ this -> entityMap -> usesAttributesArray ( ) ) { return $ properties ; } $ arrayName = $ this -> entityMap -> getAttributesArrayName ( ) ; if ( ! array_key_exists ( $ arrayName , $ properties ) ) { throw new MappingException ( "Property $arrayName not set on object of type " . $ this -> getEntityClass ( ) ) ; } if ( ! is_array ( $ properties [ $ arrayName ] ) ) { throw new MappingException ( "Property $arrayName should be an array." ) ; } $ attributes = $ properties [ $ arrayName ] ; unset ( $ properties [ $ arrayName ] ) ; return $ properties + $ attributes ; }
Convert object's properties to analogue's internal attributes representation.

@param array $properties

@throws MappingException

@return array
Convert object s properties to analogue s internal attributes representation .