Il est vrai que vous pouvez utiliser XPath pour obtenir le dernier nœud (que ce soit un nœud <gig/>
ou autre), mais vous pouvez également refléter la même technique que vous avez utilisée pour le premier noeud. De cette façon:
// first <gig/>
$xml->gig[0]
// last <gig/>
$xml->gig[count($xml->gig) - 1]
Edit: Je viens de réaliser, que vous essayez simplement d'obtenir l'attribut @id du premier et le dernier noeud <gig/>
? Dans ce cas, oubliez attributes()
et utilisez plutôt la notation de SimpleXML: les attributs sont accédés comme s'ils étaient des clés de tableau.
$first_id = $xml->gig[0]['id'];
$last_id = $xml->gig[count($xml->gig) - 1]['id'];
Malheureusement, le déréférencement de tableaux comme ça ('func() [0]') n'est pas une syntaxe PHP valide (au moment de l'écriture). Pour conserver le one-liner, la fonction 'current' pourrait être utilisée (en supposant qu'il y ait toujours au moins un noeud' gig'). L'OP veut aussi le dernier concert qui soit un enfant immédiat du nœud racine (ou du moins c'est ce que l'on veut). – salathe
@salathe: Ah, merci pour le conseil. Ce n'est pas mon langage naturel ;-) –