note 48910 deleted from function.xml-parse-into-struct by tularis

From: Date: Tue, 11 Jan 2005 22:00:46 +0000
Subject: note 48910 deleted from function.xml-parse-into-struct by tularis
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-83103@lists.php.net to get a copy of this message
Note Submitter: oleg at wrapper dot ru ---- class xmlparsedTree { function xmlparsedTree ($data="") { if (!is_string($data)) return false; $parser=xml_parser_create(); xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0); xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1); xml_parse_into_struct($parser, $data, $values, $tags); xml_parser_free($parser); return ($this=$this->buildTree(&$values, array())); } function buildTree (&$array, $tree=false, $search=null) { while( count($array) ) { $item=array_shift($array); switch ( strtolower($item['type']) ) { case 'open': $item['children']=$this->buildTree(&$array, array(), strtolower($item['tag']) ); if (!$item['children']) unset($item['children']); if (!is_array($tree)) $tree=array(); $tree[]=$item; break; case 'close': if (strtolower($item['tag'])==$search) return $tree; break; case 'complete': if (!is_array($tree)) $tree=array(); $tree[]=$item; break; } } return $tree; } }

« previous php.notes (#83103) next »