il mio problema è il seguente : da un file index.php voglio leggere certi contenuti che sono salvati nel file post.xml

post.xml
codice:
<?xml version="1.0" encoding="UTF-8" ?>

<root>
<article>
<author>
	pippo
</author>
<post>
contenuto del post di pippo
</post>
</article>

<article>
<author>
	pluto
</author>
<post>
contenuto del post di pluto
</post>
</article>
</root>
girovagando per internet ho trovato questo script che dovrebbe leggere i tag xml e caricarli , e l'ho inserito in index.php :
Codice PHP:
<?php 
//File da includere 
$filename="post.xml"
//Se il file non esiste o non è raggiungibile 
if(!($fp fopen"$filename"r"))) 
die(
"Il file non esiste o non può essere aperto."); 
//Conto gli elementi che trovo all'interno dell xml 
$contatore_persone 0
//Inizializzo l'array di elementi trovati 
$elemento_xml = array(); 
//Inizializzo lo status a vuoto 
$xml_stato_tag_corrente ''

//Funzione per inizio del Nodo dell'elemento 
function startElementHandler$parser$nome_elemento$attributi_elemento ){ 
global 
$contatore_persone
global 
$elemento_xml
global 
$xml_stato_tag_corrente
$xml_stato_tag_corrente $nome_elemento

//Funzione per la fine del Nodo dell'elemento, con incremento del contatore di elementi trovatati 
function endElementHandler$parser$nome_elemento ){ 
global 
$contatore_persone
global 
$elemento_xml
global 
$xml_stato_tag_corrente
$xml_stato_tag_corrente ''
//Il nodo principale del XML che voglio leggere è specificato con l'etichetta seguente 
if( $nome_elemento == "URL" 
$contatore_persone++; 

//Funziona che recupera le informazioni del nodo se questo è uguale a LOC 
function characterDataHandler$parser $data ){ 
global 
$contatore_persone
global 
$elemento_xml
global 
$xml_stato_tag_corrente
//Se all'interno del nodo trov nulla esco dalla funzione 
if( $xml_stato_tag_corrente == '' 
return; 
//Se all'interno del nodo corrente trovo l'etichetta che mi interessa ne prendo le informazioni 
if( $xml_stato_tag_corrente == "LOC" 
$elemento_xml[$contatore_persone]["loc"] = $data

if( !(
$xml_parser xml_parser_create()) ) 
die(
"Couldn't create XML parser!"); 
//Funzione che definisce l'inizio e la fine del nodo 
xml_set_element_handler($xml_parser,'startElementHandler','endElementHandler'); 
//Funzione che definisce il nodo di cui vogliamo conoscere le informazioni 
xml_set_character_data_handler($xml_parser"characterDataHandler"); 
//Inizializzo la lettura del file fino a quando non finise il file 
while( $data fread($fp4096) ){ 
if( !
xml_parse($xml_parser$datafeof($fp)) ){ 
break; 


xml_parser_free($xml_parser); 
//Scorro l'arrei di informazioni recuperate al fine di mostrarle a video 
for( $i=$i $contatore_persone ; ++$i ){ 
echo 
$elemento_xml[$i]["loc"] . "
"


?>
ovviamente non parte .....consigli?