Horde_SyncMl_Command::endElement PHP Méthode

endElement() public méthode

End element handler for the XML parser, delegated from Horde_SyncMl_ContentHandler::endElement().
public endElement ( string $uri, string $element )
$uri string The namespace URI of the element.
$element string The element tag name.
    public function endElement($uri, $element)
    {
        if (count($this->_stack) == 2 && $element == 'CmdID') {
            $this->_cmdID = intval(trim($this->_chars));
        }
        if (strlen($this->_chars)) {
            $this->_chars = '';
        }
        array_pop($this->_stack);
    }

Usage Example

Exemple #1
0
 /**
  * Callback public function called by WBXML parser.
  */
 public function endElement($uri, $element)
 {
     // </SyncML>: everything done already by end of SyncBody
     if (count($this->_Stack) == 1) {
         return;
     }
     // header or body?
     if ($this->_Stack[1] == 'SyncHdr') {
         switch (count($this->_Stack)) {
             case 2:
                 // </SyncHdr> end of header
                 $this->handleHeader($this->_currentCommand);
                 if ($this->debug) {
                     var_dump($this->_currentCommand);
                 }
                 unset($this->_currentCommand);
                 break;
             default:
                 // pass on to command handler:
                 $this->_currentCommand->endElement($uri, $element);
                 break;
         }
     } else {
         switch (count($this->_Stack)) {
             case 2:
                 // </SyncBody> end of SyncBody. Finish everything:
                 $this->handleEnd();
                 break;
             case 3:
                 // </[Command]></SyncBody></SyncML>
                 // Command finished. Complete parsing and pass on to Handler
                 $this->_currentCommand->endElement($uri, $element);
                 $this->handleCommand($this->_currentCommand);
                 if ($this->debug) {
                     var_dump($this->_currentCommand);
                 }
                 unset($this->_currentCommand);
                 break;
             default:
                 // </...></[Command]></SyncBody></SyncML>
                 // pass on to command handler:
                 $this->_currentCommand->endElement($uri, $element);
                 break;
         }
     }
     if (isset($this->_chars)) {
         unset($this->_chars);
     }
     array_pop($this->_Stack);
 }
All Usage Examples Of Horde_SyncMl_Command::endElement