private function getPhpMeta($elementName, $attributes)
    {
        $meta = new \StdClass();
        $meta->propertyName = '';
        $meta->phpType = '';
        $meta->unbound = false;
        $meta->attribute = false;
        $meta->elementName = '';
        $meta->strData = '';

        if (!$this->metaStack->isEmpty()) {
            $parentObject = $this->getParentObject();
            if ($parentObject) {
                $elementMeta = $parentObject->elementMeta($elementName);
                if ($elementMeta) {
                    $meta = $elementMeta;
                }
            }
        } else {
            $meta->phpType = $this->rootObjectClass;
        }

        $meta->phpObject = $this->newPhpObject($meta);

        if ($meta->phpObject) {
            foreach ($attributes as $attribute => $value) {
                // These attribute will simply not exist in a PHP object.
                if ('xmlns' === $attribute) {
                    continue;
                }
                $attributeMeta = $meta->phpObject->elementMeta($attribute);
                // Attribute in the XML may not exist as a property name in the class.
                // This could happen if the SDK is out of date with what eBay return.
                // It could also happen if eBay return elements that are not mentioned in any WSDL.
                if ($attributeMeta) {
                    $attributeMeta->strData = $value;
                    $meta->phpObject->{$attributeMeta->propertyName} = $this->getValueToAssignToProperty($attributeMeta);
                }
            }
        }

        return $meta;
    }
private function getPhpMeta($elementName, $attributes)
    {
        $meta = new \StdClass();
        $meta->propertyName = '';
        $meta->phpType = '';
        $meta->unbound = false;
        $meta->attribute = false;
        $meta->elementName = '';
        $meta->strData = '';

        if (!$this->metaStack->isEmpty()) {
            $parentObject = $this->getParentObject();
            if ($parentObject) {
                $elementMeta = $parentObject->elementMeta($elementName);
                if ($elementMeta) {
                    $meta = $elementMeta;
                }
            }
        } else {
            $meta->phpType = $this->rootObjectClass;
        }

        $meta->phpObject = $this->newPhpObject($meta);

        if ($meta->phpObject) {
            foreach ($attributes as $attribute => $value) {
                // These attribute will simply not exist in a PHP object.
                if ('xmlns' === $attribute) {
                    continue;
                }
                $attributeMeta = $meta->phpObject->elementMeta($attribute);
                // Attribute in the XML may not exist as a property name in the class.
                // This could happen if the SDK is out of date with what eBay return.
                // It could also happen if eBay return elements that are not mentioned in any WSDL.
                if ($attributeMeta) {
                    $attributeMeta->strData = $value;
                    $meta->phpObject->{$attributeMeta->propertyName} = $this->getValueToAssignToProperty($attributeMeta);
                }
            }
        }

        return $meta;
    }
private function getPhpMeta ( $ elementName , $ attributes ) { $ meta = new \ StdClass ( ) ; $ meta -> propertyName = '' ; $ meta -> phpType = '' ; $ meta -> unbound = false ; $ meta -> attribute = false ; $ meta -> elementName = '' ; $ meta -> strData = '' ; if ( ! $ this -> metaStack -> isEmpty ( ) ) { $ parentObject = $ this -> getParentObject ( ) ; if ( $ parentObject ) { $ elementMeta = $ parentObject -> elementMeta ( $ elementName ) ; if ( $ elementMeta ) { $ meta = $ elementMeta ; } } } else { $ meta -> phpType = $ this -> rootObjectClass ; } $ meta -> phpObject = $ this -> newPhpObject ( $ meta ) ; if ( $ meta -> phpObject ) { foreach ( $ attributes as $ attribute => $ value ) { // These attribute will simply not exist in a PHP object. if ( 'xmlns' === $ attribute ) { continue ; } $ attributeMeta = $ meta -> phpObject -> elementMeta ( $ attribute ) ; // Attribute in the XML may not exist as a property name in the class. // This could happen if the SDK is out of date with what eBay return. // It could also happen if eBay return elements that are not mentioned in any WSDL. if ( $ attributeMeta ) { $ attributeMeta -> strData = $ value ; $ meta -> phpObject -> { $ attributeMeta -> propertyName } = $ this -> getValueToAssignToProperty ( $ attributeMeta ) ; } } } return $ meta ; }
Looks up the PHP meta data for the element.

Allow the parser to build the required PHP object for an element.

@param string $name The name of the element.
@param arrary $attributes Associative array of the element's attributes.

@returns array Associative array containing the PHP meta data.
Looks up the PHP meta data for the element .