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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
[
{
"list": "optionsLastschrift",
"text": "- Bitte auswählen -",
"value": 0
},
{
"list": "optionsMemberRolle",
"text": "1. Vorstand",
"value": 1
},
{
"text": "2. Vorstand",
"list": "optionsMemberRolle",
"value": 2
},
{
"text": "Abbuchungsauftrag",
"list": "optionsLastschrift",
"value": 2
},
{
"text": "Aktiv",
"list": "optionsMemberStatus",
"value": 1
},
{
"list": "optionsLastschrift",
"text": "Einzugsermächtigung",
"value": 1
},
{
"value": 7,
"list": "optionsMemberRolle",
"text": "Fußball - Spielleiter"
},
{
"value": 5,
"list": "optionsMemberRolle",
"text": "Fußballspieler"
},
{
"text": "Fußballtrainier",
"list": "optionsMemberRolle",
"value": 6
},
{
"value": 11,
"text": "Gymnastik",
"list": "optionsMemberRolle"
},
{
"list": "optionsMemberRolle",
"text": "Hausmeister",
"value": 12
},
{
"value": 3,
"text": "Inaktiv - nicht zahlend",
"list": "optionsMemberStatus"
},
{
"value": 2,
"list": "optionsMemberStatus",
"text": "Inaktiv - zahlend"
},
{
"value": 3,
"text": "Kassier",
"list": "optionsMemberRolle"
},
{
"text": "männlich",
"list": "optionsGeschlecht",
"value": 1
},
{
"list": "optionsMemberRolle",
"text": "Schriftführer",
"value": 4
},
{
"text": "Tennisspieler",
"list": "optionsMemberRolle",
"value": 8
},
{
"value": 9,
"list": "optionsMemberRolle",
"text": "Tennistrainer"
},
{
"text": "transgender",
"list": "optionsGeschlecht",
"value": 3
},
{
"value": 4,
"list": "optionsMemberStatus",
"text": "Verstorben"
},
{
"value": 10,
"text": "Volleyballspieler",
"list": "optionsMemberRolle"
},
{
"list": "optionsMemberRolle",
"text": "Webmaster",
"value": 13
},
{
"text": "weiblich",
"list": "optionsGeschlecht",
"value": 2
}
]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
sub getStringChoose{ my $chooseList = shift; my $ids = shift; my $list = shift; my @listvalues; foreach( @{$ids} ){ my $id = $_; my @exists = grep ($_->{list} eq $list && $_->{value} == $id, @{$chooseList}); push( @listvalues, @exists); } my @arrayJoin; foreach(@listvalues){ push( @arrayJoin, $_->{text} ); } return (scalar(@listvalues) > 0) ? join(", ",@arrayJoin) : " - "; }
my @arrayJoin = map { $_->{text} } @listvalues;
1 2 3 4 5 6 7 8 9 10 11 12 13
my %chooseHash = (); foreach my $satz (@chooseList) { $chooseHash{$satz->{list}}[$satz->{value}] = $satz->{text}; } sub getStringChoose2 { my ($hash,$ids,$list) = @_; my $string = join ", ", @{$chooseHash{$list}}[@$ids]; return $string || " - "; } say getStringChoose2 ( \%chooseHash, [3,10], 'optionsMemberRolle');
2019-12-21T17:08:46 GwenDragonUnd map ist oft schneller als irgendeine Schleife.
Die heilige Dreifaltigkeit des Perl Universe bei mir ist map grep depp. äh... sort ;)
Von der Randalierenden Schwartz' Transformation mal abgesehen. :P
PS: Hatte als Drachin heute schon Ritter und Clowns gefrühstückst.