Variabelnamen in Variabeln
Tanja
- asp.net
Hallo
ich versuche gerade ASP zu lernen. Nun bin ich auf ein Problem gestossen. Meine Variabelnamen stehen in anderen Variabeln drin.
Beispiel:
dim a
dim b
b = a
a = "Hallo"
Ich möchte nun die Variable a (deren Name ja in der Variable b steht) ausgeben. Gibt es in ASP eine Funktion dazu?
Das selbe in PHP lautet ja (in bezug auf das Beispiel) $$b;
Mit freundlichen Grüssen,
Tanja
Sup!
b = a
a = "Hallo"
Ich möchte nun die Variable a (deren Name ja in der Variable b steht) ausgeben. Gibt es in ASP eine Funktion dazu?
Das selbe in PHP lautet ja (in bezug auf das Beispiel) $$b;
Also, ich bezweifle das. In Perl hiesse es:
$b= $a
$a= "Hallo"
print $$b;
In Deinem VB-Code, oder was auch immer, kann ich keine Hinweis darauf sehen, daß b eine Referenz auf a ist.
Gruesse,
Bio
Hallo,
dim a
dim b
b = a
a = "Hallo"
Da stimmt die Reihenfolge schon mal nicht. Zum Zeitpunkt indem b = a ist, ist a zwar dimensioniert aber nicht gefüllt. Richtig
a = "Hallo"
b = a
<%Response.Write(b)%>
cu
uDas .-)
Hallo,
dim a
dim b
b = a
a = "Hallo"
Da stimmt die Reihenfolge schon mal nicht. Zum Zeitpunkt indem b = a ist, ist a zwar dimensioniert aber nicht gefüllt. Richtig
a = "Hallo"
b = a
<%Response.Write(b)%>
cu
uDas .-)
Hi,
also, so wie ich "sie" verstanden haben, möchte sie irgendwas mit dem Variablennamen anfangen, nicht nur mit deren Wert. "DU" hast zwar die richtige Reihenfolge für das Übergeben des Wertes gesagt, daß bringt ihr aber auch nicht den Variablennamen.
Ich will nichts böses über PHP sagen, aber so ein System $$b ist mir vom sinnvollen Nutzen nicht ganz so klar. ASP geht da von anderer Seite heran, mit einer "Sammlung".
z.b. wenn du ein Formular mit method=post übermittelst, findest du alle gesendeten Daten in Request.Form wieder, jeweils mit einem Wertepaar: Request.Form("eingabefeld1_name") = Wert von eingabefeld1
Bei PHP sind ja die gesendeten Daten wohl gleich in der Form $eingabefeld1 verfügbar, wenn ich mich recht entsinne. Das ist halt der Unterschied zwischen beiden Welten.
Wenn du wirklich ganz dringend den "Variablennamen" brauchst, empfehle ich die Verwendung eines Dictionary-Objekts
set dic = CreateObject("Scripting.Dictionary")
dic("variable_a") = "Hallo Welt"
^^^^^^^^^^^^ dafür kannst du auch eine andere !Zeichenkette! verwenden
"variable_a" ist quasi der Schlüssel / key
"Hallo Welt" der Wert bzw. das item
Dictionaries haben die Sammlungen dictionary.keys und dictionary.items
Beide kannst du mit >> for each schlussel in dictionary.keys <<
oder >> for each wert in dictionay.items << durchlaufen.
Ich hoffe, das hilft etwas weiter.
Frank
b = a
a = "Hallo"
Da stimmt die Reihenfolge schon mal nicht. Zum Zeitpunkt indem b = a ist, ist a zwar dimensioniert aber nicht gefüllt. Richtig
a = "Hallo"
b = a
<%Response.Write(b)%>
cu
uDas .-)
T'schuldige, eigentlich will ich gar keinen Wert von einer Variable in eine andere kopieren. Das ganze sollte eigentlich heissen (und dann ist die Reihenfolge nähmlich richtig):
b = "a"
a = "hallo"
Nun steht der Name der Variable a in b (als String). Und nun möchte ich die Variable a ausgeben und das über die Variable b. Wie gesagt heisst das in PHP: $$b; Die Ausgabe davon lautet dann "Hallo".
Gruss, Tanja