original_string: private function _propfind_startElement($parser, $name, $attrs) {
          // lower XML Names... maybe break a RFC, don't know ...
          $parserid = (int) $parser;
  
          $propname = strtolower($name);
          if (!empty($this->_xmltree[$parserid])) {
              $this->_xmltree[$parserid] .= $propname . '_';
          } else {
              $this->_xmltree[$parserid] = $propname . '_';
          }
  
          // translate xml tree to a flat array ...
          switch($this->_xmltree[$parserid]) {
          case 'dav::multistatus_dav::response_':
              // new element in mu
              $this->_ls_ref =& $this->_ls[$parserid][];
              break;
          case 'dav::multistatus_dav::response_dav::href_':
              $this->_ls_ref_cdata = &$this->_ls_ref['href'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::creationdate_':
              $this->_ls_ref_cdata = &$this->_ls_ref['creationdate'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::getlastmodified_':
              $this->_ls_ref_cdata = &$this->_ls_ref['lastmodified'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::getcontenttype_':
              $this->_ls_ref_cdata = &$this->_ls_ref['getcontenttype'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::getcontentlength_':
              $this->_ls_ref_cdata = &$this->_ls_ref['getcontentlength'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::depth_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_depth'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::owner_dav::href_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_owner'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::owner_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_owner'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::timeout_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_timeout'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::locktoken_dav::href_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_token'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::locktype_dav::write_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_type'];
              $this->_ls_ref_cdata = 'write';
              $this->_ls_ref_cdata = &$this->_null;
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::resourcetype_dav::collection_':
              $this->_ls_ref_cdata = &$this->_ls_ref['resourcetype'];
              $this->_ls_ref_cdata = 'collection';
              $this->_ls_ref_cdata = &$this->_null;
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::status_':
              $this->_ls_ref_cdata = &$this->_ls_ref['status'];
              break;
  
          default:
              // handle unknown xml elements...
              $this->_ls_ref_cdata = &$this->_ls_ref[$this->_xmltree[$parserid]];
          }
      }
code: private function _propfind_startElement($parser, $name, $attrs) {
          // lower XML Names... maybe break a RFC, don't know ...
          $parserid = (int) $parser;
  
          $propname = strtolower($name);
          if (!empty($this->_xmltree[$parserid])) {
              $this->_xmltree[$parserid] .= $propname . '_';
          } else {
              $this->_xmltree[$parserid] = $propname . '_';
          }
  
          // translate xml tree to a flat array ...
          switch($this->_xmltree[$parserid]) {
          case 'dav::multistatus_dav::response_':
              // new element in mu
              $this->_ls_ref =& $this->_ls[$parserid][];
              break;
          case 'dav::multistatus_dav::response_dav::href_':
              $this->_ls_ref_cdata = &$this->_ls_ref['href'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::creationdate_':
              $this->_ls_ref_cdata = &$this->_ls_ref['creationdate'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::getlastmodified_':
              $this->_ls_ref_cdata = &$this->_ls_ref['lastmodified'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::getcontenttype_':
              $this->_ls_ref_cdata = &$this->_ls_ref['getcontenttype'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::getcontentlength_':
              $this->_ls_ref_cdata = &$this->_ls_ref['getcontentlength'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::depth_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_depth'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::owner_dav::href_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_owner'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::owner_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_owner'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::timeout_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_timeout'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::locktoken_dav::href_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_token'];
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::locktype_dav::write_':
              $this->_ls_ref_cdata = &$this->_ls_ref['activelock_type'];
              $this->_ls_ref_cdata = 'write';
              $this->_ls_ref_cdata = &$this->_null;
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::resourcetype_dav::collection_':
              $this->_ls_ref_cdata = &$this->_ls_ref['resourcetype'];
              $this->_ls_ref_cdata = 'collection';
              $this->_ls_ref_cdata = &$this->_null;
              break;
          case 'dav::multistatus_dav::response_dav::propstat_dav::status_':
              $this->_ls_ref_cdata = &$this->_ls_ref['status'];
              break;
  
          default:
              // handle unknown xml elements...
              $this->_ls_ref_cdata = &$this->_ls_ref[$this->_xmltree[$parserid]];
          }
      }
code_tokens: private function _propfind_startElement ( $ parser , $ name , $ attrs ) { // lower XML Names... maybe break a RFC, don't know ... $ parserid = ( int ) $ parser ; $ propname = strtolower ( $ name ) ; if ( ! empty ( $ this -> _xmltree [ $ parserid ] ) ) { $ this -> _xmltree [ $ parserid ] .= $ propname . '_' ; } else { $ this -> _xmltree [ $ parserid ] = $ propname . '_' ; } // translate xml tree to a flat array ... switch ( $ this -> _xmltree [ $ parserid ] ) { case 'dav::multistatus_dav::response_' : // new element in mu $ this -> _ls_ref = & $ this -> _ls [ $ parserid ] [ ] ; break ; case 'dav::multistatus_dav::response_dav::href_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'href' ] ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::creationdate_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'creationdate' ] ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::getlastmodified_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'lastmodified' ] ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::getcontenttype_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'getcontenttype' ] ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::getcontentlength_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'getcontentlength' ] ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::depth_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'activelock_depth' ] ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::owner_dav::href_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'activelock_owner' ] ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::owner_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'activelock_owner' ] ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::timeout_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'activelock_timeout' ] ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::locktoken_dav::href_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'activelock_token' ] ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::lockdiscovery_dav::activelock_dav::locktype_dav::write_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'activelock_type' ] ; $ this -> _ls_ref_cdata = 'write' ; $ this -> _ls_ref_cdata = & $ this -> _null ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::prop_dav::resourcetype_dav::collection_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'resourcetype' ] ; $ this -> _ls_ref_cdata = 'collection' ; $ this -> _ls_ref_cdata = & $ this -> _null ; break ; case 'dav::multistatus_dav::response_dav::propstat_dav::status_' : $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ 'status' ] ; break ; default : // handle unknown xml elements... $ this -> _ls_ref_cdata = & $ this -> _ls_ref [ $ this -> _xmltree [ $ parserid ] ] ; } }
docstring: Private method _propfind_startElement
  
  Is needed by public method ls.
  
  Generic method will called by php xml_parse when a xml start element tag has been detected.
  The xml tree will translated into a flat php array for easier access.
  @param resource parser, string name, string attrs
  @access private
docstring_tokens: Private method _propfind_startElement