2010-10-21 7 views
1

Je construis une galerie de photos, en construisant un objet basé sur un fichier xml.SimpleXML get next/prev node

Comment puis-je récupérer les nœuds suivant et précédent? Voici à quoi ressemble mon code de base:

$xmlData = new SimpleXMLElement(file_get_contents("data.xml")); 
foreach($xmlData->row as $item) { 
    if ($item->url == $_GET['id']) { 
     // show photo 
     $title = $item->title; 
    } 
} 

Répondre

0

Uniquement utilisable si les nœuds suivant/précédent sont du même type. Si vous voulez un traitement plus complexe, utilisez DOM.

$xmlData = new SimpleXMLElement(file_get_contents("data.xml")); 
$index = 0; 
foreach($xmlData->row as $item) { 
    if ($item->url == $_GET['id']) { 
     // show photo 
     $title = $item->title; 

     $prev = $xmlData->row[$index-1]; 
     $next = $xmlData->row[$index+1]; 
    } 
    $index++; 
} 
+0

Alin, merci pour les modifications apportées à mon message pour plus de clarté; vous êtes génial! Cela a bien fonctionné. –