Hi Folks: I just wrote a basic XML parser using the parse_xml() function set. Does what I want on the first document. But, if I try to run a second document through, it chokes saying "junk after document element." All of the files are valid and parse okay if I just send one file through. Also, the program runs fine if I redeclare the parser before parsing each file. While this works, having to redeclare the parser each time seems far from efficient. So, is there a better way to handle this, please? Sample code is below if you're interested. Thanks, --Dan <?php # Declare Parser Once. # Only works for first file. # NOTE: 'StartHandler', 'EndHandler' and 'CharacterHandler' # functions left out for clarity. $Parser = xml_parser_create('UTF-8'); xml_set_element_handler($Parser, 'StartHandler', 'EndHandler'); xml_set_character_data_handler($Parser, 'CharacterHandler'); $DirHandle = opendir("./StartTest"); while ( $FileName = readdir($DirHandle) ) { if ( ereg("^file.[0-9]{5}$", "$FileName") ) { $Contents = implode( '', file("./StartTest/$FileName") ); if ( xml_parse($Parser, $Contents) ) { echo "\n<br />Yipee!"; } else { echo "\n<br />UGH! "; echo xml_error_string(xml_get_error_code($Parser)); } } } ?> <?php # Declare Parser before parsing each file. # Works fine, but seems inefficient. # NOTE: 'StartHandler', 'EndHandler' and 'CharacterHandler' # functions left out for clarity. $DirHandle = opendir("./StartTest"); while ( $FileName = readdir($DirHandle) ) { if ( ereg("^file.[0-9]{5}$", "$FileName") ) { $Contents = implode( '', file("./StartTest/$FileName") ); $Parser = xml_parser_create('UTF-8'); xml_set_element_handler($Parser, 'StartHandler', 'EndHandler'); xml_set_character_data_handler($Parser, 'CharacterHandler'); if ( xml_parse($Parser, $Contents) ) { echo "\n<br />Yipee!"; } else { echo "\n<br />UGH! "; echo xml_error_string(xml_get_error_code($Parser)); } } } ?> -- PHP scripts that make your job easier http://www.analysisandsolutions.com/code/ SQL Solution | Layout Solution | Form Solution T H E A N A L Y S I S A N D S O L U T I O N S C O M P A N Y 4015 7 Ave, Brooklyn NY 11232 v: 718-854-0335 f: 718-854-0409 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]