• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Dynamische Variablen

Nonens

Lounge-Member
Sorry, daß ich so eine Dummy-Frage stellen muß, aber weder mein Buch noch mein Freund noch die Threads hier oder in anderen Foren brachten mich weiter.

Ich verstehe einfach nicht, wozu man sie braucht und warum die Schreibweise folgende ist:

$benutzer ="bob";
$varname="benutzer";
print "$$varname";

respektive

$varname = "benutzer";
$$varname = "bob";
print $$varname;

oder

print "${$varname}";

:confused:

Ich kann das alles überhaupt nicht nachvollziehen.

Warum ist das alles das gleiche? Wie funktionieren dynamische Variablen?

Diesen Part in dem Buch habe ich schon zigmal gelesen, und ich kapiere ihn einfach nicht ... :(

Für Euch ist das wahrscheinlich so leicht wie 2+2, aber ich steige da nicht durch.

Kann mir das einer von Euch nochmal für total Blöde erklären? Wäre echt lieb ... :rolleyes:
 
Mal von vorne anfangen
die Variable $benutzer erhält den Wert bob.
bob ist ein ganz normaler Text auf Grund der Anführungszeichen!

Befehl: $benutzer = "bob";

Die Variable $varname erhält den Wert benutzer, ebenfalls als Text.

soweit so gut, mit dem Befehl print "$$varname"; wird nun der Text bob ausgegeben, und zwar da zuerst die Variable $varname durch den Text benutzer ausgetauscht wird. Da aber vor der Varibale $varname nochmal ein $-Zeichen steht wird deinem Webserver klargemacht, dass es sich um eine Variable handelt.

also aus $$varname wird wenn man $varname durch benutzer ersetzt $benutzer, und da $benutzer "bob" ist wird bob ausgegeben!

beim zweiten ist es Dasselbe. $varname wird bei Zeile 2 ersetzt durch benutzer, damit wird die neue Variable $benutzer geschaffen, deren Wert bob ist.
Dann müsste der Printbefehl eigentlich print "$benutzer"
denn wenn man $$varname den Wert bob zuweist und dann $$varname ausgibt kann dabei auch nur bb rauskommen!

den letzten Befehl habe ich auf Grund fehlender Zusammenhänge (hängen die 3 Beispiele in sich einander zusammen oder ist es jeweils der komplette code??) nicht kapiert
 
Also die dritte Schreibweise soll wohl Perl-kompatibel sein... aber keine Ahnung... ist auch egal....

die Frage wozu das Ganze wurde noch nicht beantwortet..... nunja.... ich weiß es auch nicht.... mir ist bislang noch kein vernünftiger Grund oder Fall untergekommen, wofür man sie hätte einsetzen können.....
In den Programmiersprachen, die ich sonst benutze gibt es sowas auch erst gar nicht.... und in den 6 Jahren, die ich als Softwareentwickler gearbeitet habe, hatte ich nie den Wunsch solche dynamischen Variablen zu verwenden..... dafür gibts ja die Zeiger (zumindest in C und C++ :) )

Aber wer weiß, vielleicht gibt es ja einen Anwendungsfall, bei dem diese Form der Variablen eine enorme Rolle spielen, bzw. dafür sorgen, daß man eine elegante Lösung für ein komplexes Problem bekommt....

ich warte mal auf Vorschläge.... :)
 
nunja, wenn man auf bestimmte Formulardaten bestimmte Werte ausgeben möchte, aber keine if Abfrage verwenden will - oder so! ;-)

Wenn ich grad dabei bin: wie bekommt man mittels PHP die IP Adresse des Users heraus??
 
@DJ Wagi: jetzt versuchst Dus aber auf allen Kanälen.... dabei mußt Du nur die Suchfunktion anschmeißen, um rauszufinden, daß es eine Environment Variable namens REMOTE_ADDR gibt (und sach jetzt net ip wäre zu kurz zum suchen.... schon mal ip_adresse gesucht??) ;)
 
naja, im mod forum wars ja vor allem wegen der activation sache, die letzte frage war nur zusatz *grin*

Diese Suchfunktion mag ich überhaupt nicht, da - so kommt es mir zumindest vor - einige einträge überhaupt nicht angezeigt werden!
 
Es wird alles angezeit, wonach du suchst und wo treffer zu finden sind. Zugegeben, das ist nicht immer logisch, aber wenn man in die Postings reinschaut, findet man auch den gesuchten Begriff, teilweise nur total aus dem Zusammenhang, den man eigentlich gerade sucht :(. Naja, und so ein google für Forensysteme gibbet halt noch nicht :)
 
Zurück
Oben