1
2
3
4
5
my $href = {
beleg_art => \%beleg_art,
adresse => \%adresse, };
my $pdf_file = create_pdf_v3($href);
1 2 3 4 5 6 7 8 9
sub create_pdf_v3 { my ($ba,$adr) = @_; # jetzt gibt es %$ba und %$adr, echte Referenzen auf die Hashes # Beispiel Iteration: foreach my $ober (keys %$ba) { foreach my $unter (keys %{$ba->{$ober}}) { print "ich bin eine Referenz: ".$ba->{$ober}{$unter}; } } }
1 2 3 4 5 6 7 8 9 10 11
my $arr_ref = [ 1, 2, 4, 8, 16 ]; say $$arr_ref[2]; # ergibt 4 say $arr_ref->[2]; # dasselbe anders geschrieben, ergibt auch 4 my $h_ref = { Koordinaten => { Laenge => 13.4711, Breite => -42.0815}, Ortsnamen => [ 'boodorf', 'Boohtan', 'Boost' ] }; say $h_ref->{Ortsnamen}->[0]; # ergibt boodorf say $$h_ref{Ortsnamen}[0]; # ergibt boodorf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
#!/usr/bin/perl use strict; use warnings; use 5.010; use utf8; my %adresse = ( Name => 'Bkah', Strasse => 'Morgula Av. 11-B', Land => 'Perlistan' ); my %beleg_art = ( Art => 'Rechnung' ); my $href = { beleg_art => \%beleg_art, adresse => \%adresse, }; my $pdf_file = create_pdf_v3($href); sub create_pdf_v3 { my $href = shift; my %belege_hash = %{ $href->{beleg_art} }; my %adressen_hash = %{ $href->{adresse} }; print "Der Kunde ist ", $adressen_hash{Name}; print " mit ", $belege_hash{Art}; }
2021-01-05T05:53:49 chmod777Ja, das ist korrekt.1.) übergabe in der sub mit "my $href = shift;" korrekt?
2021-01-05T05:53:49 chmod7772.) Wie wird in der Sub auf die einzelnen hash-variable zugegriffen bzw. diese abgefragt.
$href->{adresse}{Land} = 'Programming Republic of Perl';
2021-01-05T05:53:49 chmod7773.) Gibt's "best practice" und ev. einen Link oder ein Tutorial?