Wie greifen Sie auf Daten in Hash
Habe ich diesen code:
$coder = JSON::XS->new->utf8->pretty->allow_nonref;
%perl = $coder->decode ($json);
Wenn ich Schreibe print %perl
variable heißt es HASH(0x9e04db0). Wie kann ich den Zugriff auf Daten in diesen HASH?
InformationsquelleAutor Jay Gridley | 2010-03-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Rückgabewert
decode
ist kein hash und man sollte nicht die Zuordnung zu einer%hash
-- wenn Sie das tun, zerstören Sie seinen Wert. Es ist ein hash Referenz und zugewiesen werden soll ein Skalar sein. Lesen perlreftut.InformationsquelleAutor hobbs
Als
decode
Methode tatsächlich gibt eine Referenz hash, den richtigen Weg zu weisen wäre:Sagte, dass, um die Daten aus dem hash, können Sie die jeder builtin oder-Schleife über die Schlüssel und die Werte abzurufen, die von subscripting.
InformationsquelleAutor Eugene Yarmash
JSON::XS->decode liefert eine Referenz auf ein array oder einen hash. Zu tun, was Sie versuchen zu tun, würden Sie haben, dies zu tun:
In anderen Worten, Sie haben zu dereferenzieren den hash, wenn Sie es verwenden.
InformationsquelleAutor Leon Timmermans
Müssen Sie den Schlüssel des hash, nur Dann werden Sie in der Lage, den Zugriff auf die Daten aus dem hash .
Zum Beispiel, wenn %perl hash-Schlüssel namens 'Datei' ;
Du wohl zu zugreifen, wie unten
print $perl{'Datei'} ; # es würde drucken Sie die Datei, Schlüssel-Wert der %perl hash
InformationsquelleAutor Pavunkumar
Viele Möglichkeiten, Sie können verwenden Sie eine
foreach loop
oder eine
while loop
InformationsquelleAutor Anand Shah