Aud leere Referenz / Zeiger prüfen?

Von: , Frage gestellt am Mi, 26. Jan 2005

Hallo!

Ich lese mit XML::Simple eine XML-Datei aus:

my $daten = XMLin($xml_datei);
my $name = $daten->{name};

Wenn name jedoch nicht in der XML-Datei auftauscht, enthält $name so etwas wie HASH(0x1210e4c).

Wie kann ich einfach überprüfen, ob $name gültig ist?

Danke!

2 Antworten zu dieser Frage

  1. Antwort von nach einer Stunde 1 hilfreich
    Re: Auf leere Referenz / Zeiger prüfen?

    Hallo, Ich lese mit XML::Simple eine XML-Datei aus:

    my $daten = XMLin($xml_datei);
    my $name = $daten->{name};

    Wenn name jedoch nicht in der XML-Datei auftauscht, enthält
    $name so etwas wie HASH(0x1210e4c).

    Wie kann ich einfach überprüfen, ob $name gültig ist?
    Ich kenne zwar XML::Simple nicht, aber reicht es dir einfach zu überprüfen ob der Hash das Element name enthälft?
    if(defined($daten->{name})){...} sollte eigentlich reichen...

    Grüße,
    Moritz

    • Antwort von nach 2 Stunden 0 hilfreich
      Re^2: Auf leere Referenz / Zeiger prüfen?

      Danke, das war´s wohl. Ich hatte danach gesucht, wie man eine Referenz auf Gültigkeit untersucht, aber es war ja gar keine.

      Hm, vielleicht auch wegen so etwas sollen in Perl 6 Hashes immer mit % und Arrays immer mit @ beginnen, auch wenn nur ein Element indiziert wird. :-)

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!