simplexml Knoten mit dynamischem Index auslesen fuktioniert nicht

DrBonsai

Mitglied
Hallo zusammen,

ich kriege es nicht gebacken, einen Knoten eines XML-files auszulesen, wenn der Index dynamisch übergeben wird.

Ich habe folgendes XMl-Schema:

PHP:
<?xml version="1.0" encoding="UTF-8" ?>
<accommodations>
<accommodation>
<code>AT1130.120.1</code>
<name /> [...]

Jetzt möchte ich nichts anderes machen, als den Code eines Eintrags auszulesen:

PHP:
$current_object_number = $_GET['number'];
$xml = simplexml_load_file("accommodation/accommodation.xml");
if(isset($xml->accommodation[$current_object_number]->code[0]))
	{
	$current_ih_object_id = $xml->accommodation[$current_object_number]->code[0];
	}
echo $current_ih_object_id;
Wenn ich anstatt meiner $current_object_number eine beliebige Zahl einsetze, funktioniert es, mit der Variablen nicht.

Hat jemand eine Ahnung, woran es liegen könnte?

($current_object_id ist definiert und lässt sich ausgeben)

Danke schonmal,

David
 
Zuletzt bearbeitet:
Hi,

ich würde darauf tippen, dass $_GET['...'] standardweise Strings sind und du somit ein String als Index benutzt.
Versuche mal folgende Zeile:
PHP:
$current_object_number = intval($_GET['number']);
 
Nur mal so: Dein Container für accomodation heißt acommodations, also müsste es doch so heißen?

PHP:
    if(isset($xml->accommodations[$current_object_number]->code[0]))
    {
      $current_ih_object_id = $xml->accommodations[$current_object_number];
    }

Allerdings ist dann in $current_ih_object_id ein Objekt, nämlich das Objekt accomodation mit dem Index $current_object_number.

Vielleicht solltest du dir mal var_dump() für das debuggen ansehen.
 
Zurück