1 <?php 2 $g_books = array(); 3 $g_elem = null; 4 5 function startElement( $parser, $name, $attrs ) 6 { 7 global $g_books, $g_elem; 8 if ( $name == ‘BOOK‘ ) $g_books []= array(); 9 $g_elem = $name; 10 } 11 12 function endElement( $parser, $name ) 13 { 14 global $g_elem; 15 $g_elem = null; 16 } 17 18 function textData( $parser, $text ) 19 { 20 global $g_books, $g_elem; 21 if ( $g_elem == ‘AUTHOR‘ || 22 $g_elem == ‘PUBLISHER‘ || 23 $g_elem == ‘TITLE‘ ) 24 { 25 $g_books[ count( $g_books ) - 1 ][ $g_elem ] = $text; 26 } 27 } 28 29 $parser = xml_parser_create(); 30 31 xml_set_element_handler( $parser, "startElement", "endElement" ); 32 xml_set_character_data_handler( $parser, "textData" ); 33 34 $f = fopen( ‘books.xml‘, ‘r‘ ); 35 36 while