Codice PHP:
$filename="file.xml";
    if(!(
$fp fopen("$filename"r")))
        die(
"Non posso aprire il file");
    
$elenco_counter 0;
    
$elenco_data = array();
    
$xml_current_tag_state '';
    
    function 
startElementHandler($parser$element_name$element_attribs)
    {
    global 
$elenco_counter;
    global 
$elenco_data;
    global 
$xml_current_tag_state;
    
$xml_current_tag_state $element_name;
    }
    
    function 
endElementHandler($parser$element_name)
    {
    global 
$elenco_counter;
    global 
$elenco_data;
    global 
$xml_current_tag_state;
    
$xml_current_tag_state '';
    if( 
$element_name == "CD" 
        {
            
$elenco_counter++;
        }
    }
    
    function 
characterDataHandler($parser $data)
    {
    global 
$elenco_counter;
    global 
$elenco_data;
    global 
$xml_current_tag_state;
    if( 
$xml_current_tag_state == '' )
    return;
    if( 
$xml_current_tag_state == "TITLE" 
        {
            
$elenco_data[$elenco_counter]["title"] = $data;
        }
    if( 
$xml_current_tag_state == "ARTIST" 
        {
            
$elenco_data[$elenco_counter]["artist"] = $data;
        }
    if( 
$xml_current_tag_state == "YEAR" 
        {
            
$elenco_data[$elenco_counter]["year"] = $data;
        }
}

if( !(
$xml_parser xml_parser_create()) )
die(
"Non riesco a creare il parser XML");

xml_set_element_handler($xml_parser"startElementHandler""endElementHandler");
xml_set_character_data_handler($xml_parser"characterDataHandler");

while( 
$data fread($fp4096))
{
    if( !
xml_parse($xml_parser$datafeof($fp)))
    {
        break;
    }
}
//libero la memoria
xml_parser_free($xml_parser); 
poi per leggere i dati:
Codice PHP:
<?php
for($i=$i $elenco_counter ; ++$i)
{
//decommenta la riga sottostante se vuoi l'id della news
//echo $i . "
\n";
echo "
Title" . $elenco_data[$i]["title"] . "
\n";
echo "
Artist" . $elenco_data[$i]["artist"] . "
\n";
echo "
Year" . $elenco_data[$i]["year"] . "
\n";
echo "
\n";
}
?>