Schrift
[thread]7353[/thread]

Array aufruf mit einer Variablen



<< >> 10 Einträge, 1 Seite
zipster
 2005-10-14 19:26
#58861 #58861
User since
2004-09-06
458 Artikel
BenutzerIn
[default_avatar]
Hi,

gibt es eine möglichkeit ein Array mit einer Variable aufzurufen?
(Siehe Beispiel)

Code: (dl )
1
2
3
4
5
6
7
8
9
#! /usr/bin/perl -w

use strict;


my @arraytest = ("1111");
my $variable = "test";

print "@array$variable";


Gruß
Serioscha aka zipster
pq
 2005-10-14 19:32
#58862 #58862
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
ja.
my %hash;
$hash{test} = ["1111"];
my $variable = "test";
print "@{$hash{$variable}}";
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
renee
 2005-10-14 19:34
#58863 #58863
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Du solltest einen Hash benutzen...
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/
zipster
 2005-10-14 19:36
#58864 #58864
User since
2004-09-06
458 Artikel
BenutzerIn
[default_avatar]
Ich wollte es dafür benutzten... ich weiß nicht ob das mit nem Hash auch ohne weiteres möglich ist.

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
...
eingabe_formular_anzeigen (\@element_liste);
...
sub eingabe_formular_anzeigen
{
my $element_liste_ref = shift;
my @fields;
foreach my $f (@{$element_liste_ref})
{
my $bez = $f->{bez};
...
\n\n

<!--EDIT|zipster|1129304242-->
renee
 2005-10-14 20:05
#58865 #58865
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Ja klar...
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
my %hash = (elemente => [...die elemente wie im Array...]);
eingabe_formular_anzeigen (\%hash);
...
sub eingabe_formular_anzeigen
{
my $hashref = shift;
my @fields;
foreach my $f (@{$hashref->{elemente}})
{
my $bez = $f->{bez};
...
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/
zipster
 2005-10-14 20:07
#58866 #58866
User since
2004-09-06
458 Artikel
BenutzerIn
[default_avatar]
zipster
 2005-10-14 20:28
#58867 #58867
User since
2004-09-06
458 Artikel
BenutzerIn
[default_avatar]
Mhhhh ich glaube es wird Zeit das ich Feierabend mach...
irgendwie bekomme ich es nicht hin. Hier mal ein kleiner Auszug.

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
...
my %element;
my $element{liste} =
(
{ art => "textfield", name => "nachname",
bez => "Nachname:", size => 20},
)
...
eingabe_formular_anzeigen (\%element);
...
sub eingabe_formular_anzeigen
{
my $element_liste_ref = shift;
my @fields;
foreach my $f (@{$element_liste_ref->{liste}})
{
my $bez = $f->{bez};
...
}
...


Und beim Ausführen bringt er mir folgenden Fehler.
Quote
Not an ARRAY reference at C:\Programme\Apache Group\Apache2\cgi-bin\prod_reg.pl line 104.

Was diese Zeile wär
Code: (dl )
  foreach my $f (@{$element_liste_ref->{liste}})
renee
 2005-10-14 20:43
#58868 #58868
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Code: (dl )
1
2
3
4
5
my $element{liste} =
(
{ art => "textfield", name => "nachname",
bez => "Nachname:", size => 20},
)
ersetze hier mal die runden Klammern durch eckige Klammern...
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/
zipster
 2005-10-14 20:46
#58869 #58869
User since
2004-09-06
458 Artikel
BenutzerIn
[default_avatar]
Vielen Dank!

Hat funktioniert.... so ich mach jetzt Feierabend. :D
nepos
 2005-10-15 00:05
#58870 #58870
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Btw, zum Testen, Spielen und Debuggen bei sowas immer ganz hilfreich: CPAN:Data::Dumper
Damit kann man sich sowas schoen anschauen und sieht dann, was wo ist (also ob Array, Array-Referenz, Hash bzw. Hash-Ref).
<< >> 10 Einträge, 1 Seite



View all threads created 2005-10-14 19:26.