Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]11493[/thread]

Array Problem



<< |< 1 2 >| >> 13 Einträge, 2 Seiten
GwenDragon
 2008-03-20 17:17
#107288 #107288
User since
2005-01-17
14601 Artikel
Admin1
[Homepage]
user image
/----
Modedit Gwendragon:
Titel geändert
----
Gast Gast
 2008-03-20 12:41
#107292 #107292
Hy @all

Mein Problem:
Ich möchte den Wert 'VirtualMachineVideoCard' auslesen. Wie kann ich das machen? bei mir kommt immer diese Meldung: VirtualMachineVideoCard=HASH(0xb108a2c)
Diese =HASH-zeugs sollte weg....

Hier mal der Aufbau:
bless( {
'videoRamSizeInKB' => '4096',
'unitNumber' => '0',
'deviceInfo' => bless( {
'summary' => 'Video Card',
'label' => 'Video Card '
}, 'Description' ),
'controllerKey' => '100',
'key' => '500'

}, 'VirtualMachineVideoCard' ),

Der Wert 'VirtualMachineVideoCard' steht als einziger nicht im HASH sondern im Array. Auch hat er keinen Key zum abrufen.... abr z.B. {deviceInfo}=>{summary} kann ich ohne weitere Probleme abrufen....

Wie muss ich vorgehen?
Gruss
renee
 2008-03-20 12:43
#107293 #107293
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Mit "ref" bekommst Du den Namen der Klasse...

Code (perl): (dl )
1
2
my $cgi = CGI->new;
print ref( $cgi )
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Gast Gast
 2008-03-20 14:11
#107297 #107297
Klappt leider auch nicht.... respektive, wahrscheinlich bin ich nicht fähig deinen Code richtig zu interpretieren....

i gebe folgenden Code ein:
Code (perl): (dl )
1
2
3
4
5
6
foreach my $device (@{$vm->{config}->{hardware}->{device}}){
if($device){
my $cgi = CGI->$device;
print ref( $cgi );
print "\n";
}}


Als Fehlermeldung kommt:
Can't locate object method "VirtualIDEController=HASH(0xb109470)" via package "CGI" (perhaps you forgot to load "CGI"?) at list1.pl line 169.


Danke aber schon mal für die rasche Antwort...
renee
 2008-03-20 14:32
#107299 #107299
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Mein Code war ein Beispielcode für die Verwendung von ref...

Code (perl): (dl )
1
2
3
4
5
foreach my $device (@{$vm->{config}->{hardware}->{device}}){
  if($device){
    print ref( $device ),"\n"
  }
}
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Gast Gast
 2008-03-20 15:32
#107303 #107303
SUPER!!!

Danke dir vielmals!
Hat voll hingehauen:-D

einen schönen Tag noch!
Gast Gast
 2008-03-20 15:38
#107304 #107304
Tschuldige...aber ich habe noch eine kleine Frage:-$

wie sieht es aus, wenn ich denn Inhalt mit einer if abfrage aussortieren möchte, wie muss ich da vorgehen!?

also
Code (perl): (dl )
if($device eq "VirtualMachineVideoCard"){print "ein value eines Keys, was kein Problem weiter darstellen sollte!?";}

renee
 2008-03-20 15:40
#107305 #107305
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Ich versteh ehrlich gesagt nicht so ganz was Du machen willst...

In Deinem Code fehlt noch das ref().
Code (perl): (dl )
1
2
3
if( ref($device) eq "VirtualMachineVideoCard"){
    print "ein value eines Keys, was kein Problem weiter darstellen sollte!?";
}
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Gast Gast
 2008-03-20 15:55
#107306 #107306
also jetze klappt alles....

Was ich mache will:

Ich will schauen ob der Rechner eine Graffikkarte hat oder mehrere...

bei jeder soll er einzeln die Grösse der RAM(GraKa-RAM) auslesen...
also dann ->{memory}

Und das habe ich jetzt auch geschafft!
Danke dir!
betterworld
 2008-03-20 17:06
#107310 #107310
User since
2003-08-21
2613 Artikel
ModeratorIn

user image
Es heisst Perl, nicht PERL ;)
<< |< 1 2 >| >> 13 Einträge, 2 Seiten



View all threads created 2008-03-20 12:41.