protected function _mergeProperty($property, $parentClasses, $options)
    {
        $thisValue = $this->{$property};
        $isAssoc = false;
        if (isset($options['associative']) &&
            in_array($property, (array)$options['associative'])
        ) {
            $isAssoc = true;
        }

        if ($isAssoc) {
            $thisValue = Hash::normalize($thisValue);
        }
        foreach ($parentClasses as $class) {
            $parentProperties = get_class_vars($class);
            if (empty($parentProperties[$property])) {
                continue;
            }
            $parentProperty = $parentProperties[$property];
            if (!is_array($parentProperty)) {
                continue;
            }
            $thisValue = $this->_mergePropertyData($thisValue, $parentProperty, $isAssoc);
        }
        $this->{$property} = $thisValue;
    }
protected function _mergeProperty($property, $parentClasses, $options)
    {
        $thisValue = $this->{$property};
        $isAssoc = false;
        if (isset($options['associative']) &&
            in_array($property, (array)$options['associative'])
        ) {
            $isAssoc = true;
        }

        if ($isAssoc) {
            $thisValue = Hash::normalize($thisValue);
        }
        foreach ($parentClasses as $class) {
            $parentProperties = get_class_vars($class);
            if (empty($parentProperties[$property])) {
                continue;
            }
            $parentProperty = $parentProperties[$property];
            if (!is_array($parentProperty)) {
                continue;
            }
            $thisValue = $this->_mergePropertyData($thisValue, $parentProperty, $isAssoc);
        }
        $this->{$property} = $thisValue;
    }
protected function _mergeProperty ( $ property , $ parentClasses , $ options ) { $ thisValue = $ this -> { $ property } ; $ isAssoc = false ; if ( isset ( $ options [ 'associative' ] ) && in_array ( $ property , ( array ) $ options [ 'associative' ] ) ) { $ isAssoc = true ; } if ( $ isAssoc ) { $ thisValue = Hash :: normalize ( $ thisValue ) ; } foreach ( $ parentClasses as $ class ) { $ parentProperties = get_class_vars ( $ class ) ; if ( empty ( $ parentProperties [ $ property ] ) ) { continue ; } $ parentProperty = $ parentProperties [ $ property ] ; if ( ! is_array ( $ parentProperty ) ) { continue ; } $ thisValue = $ this -> _mergePropertyData ( $ thisValue , $ parentProperty , $ isAssoc ) ; } $ this -> { $ property } = $ thisValue ; }
Merge a single property with the values declared in all parent classes.

@param string $property The name of the property being merged.
@param array $parentClasses An array of classes you want to merge with.
@param array $options Options for merging the property, see _mergeVars()
@return void
Merge a single property with the values declared in all parent classes .