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 33 34 35 36 37 38 39 40 41
use strict; use warnings; use Tie::IxHash; my %hash1; tie(%hash1, "Tie::IxHash"); my %hash2; tie(%hash2, "Tie::IxHash"); (%hash1,%hash2) = createHash(); print "%hash1:\n"; while (my ($feld, $bezeichnung) = each %hash1) { print $feld."->".$bezeichnung."\n"; } print "%hash2:\n"; while (my ($feld, $bezeichnung) = each %hash2) { print $feld."->".$bezeichnung."\n"; } exit; sub createHash { my %hash1; tie(%hash1, "Tie::IxHash"); my %hash2; tie(%hash2, "Tie::IxHash"); $hash1{'Feld1'}='Wert1'; $hash2{'Feld2'}='Wert2'; return (%hash1,%hash2); }
1
2
3
4
5
C:\Users\Tester\Desktop\pa-licmailer_aktuell>test.pl
%hash1:
Feld1->Wert1
Feld2->Wert2
%hash2:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
#! /usr/bin/perl use strict; use warnings; use Tie::IxHash; tie my %hash1, 'Tie::IxHash'; tie my %hash2, 'Tie::IxHash'; fill_hashes( \%hash1, \%hash2 ); sub fill_hashes() { my $hRef1 = shift; my $hRef2 = shift; $hRef1->{Feld1} = 'Wert1'; $hRef2->{Feld2} = 'Wert2'; # return sparen wir uns, weil wir via Referenz direkt mit den Hashes gearbeitet haben }
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 33 34 35 36 37 38 39 40 41 42 43
use strict; use warnings; use Tie::IxHash; my %hash1; tie(%hash1, "Tie::IxHash"); my %hash2; tie(%hash2, "Tie::IxHash"); my ($hash1,$hash2) = createHash(); %hash1 = %{$hash1}; %hash2 = %{$hash2}; print "%hash1:\n"; while (my ($feld, $bezeichnung) = each %hash1) { print $feld."->".$bezeichnung."\n"; } print "%hash2:\n"; while (my ($feld, $bezeichnung) = each %hash2) { print $feld."->".$bezeichnung."\n"; } exit; sub createHash { my %hash1; tie(%hash1, "Tie::IxHash"); my %hash2; tie(%hash2, "Tie::IxHash"); $hash1{'Feld1'}='Wert1'; $hash2{'Feld2'}='Wert2'; return (\%hash1,\%hash2); }