Namen einer Variablen rausfinden
Dieter Raber
- php
0 Harry0 eisbaer040 Tom0 Dankeschön
Dieter Raber
Hallo,
Wenn ich eine Variable $foo = 'bar' habe, kann ich mit 'bar' natürlich alles Mögliche veranstalten. Wie aber finde ich den Namen der Variablen raus, mit anderen Worten, gibt es eine Funktion, die den String '$foo' oder 'foo' zurückgibt?
Ich hab so das dumpfe Gefühl, ich sollte die Antwort selbst wissen, aber mir will nichts Passendes einfallen.
Dieter
Holladiewaldfee,
Ich hab so das dumpfe Gefühl, ich sollte die Antwort selbst wissen, aber mir will nichts Passendes einfallen.
nur so interessehalber nachgefragt:
Wo verwendet man Variablen, von denen man nicht weiß, wie sie heißen, deren Namen man aber herausfinden will, indem man sie nach demselben frägt, wozu man diesen aber bereits wissen müsste?!
Ciao,
Harry
Hi,
schreib einfach ein $ davor (also $$foo).
<?php
$foo = 'bar';
echo '$' . $$foo . ' = '' . $foo . '';';
?>
Ausgabe: $foo = 'bar'; //ich hoffe, ich habe mich nicht vertippt ;-)
Der Sinn dahinter bleibt mir allerdings im Moment noch verborgen, da du ja den Namen kennst, wenn du ihn hinschreibst ...
eb4
Hello,
Wenn ich eine Variable $foo = 'bar' habe, kann ich mit 'bar' natürlich alles Mögliche veranstalten. Wie aber finde ich den Namen der Variablen raus, mit anderen Worten, gibt es eine Funktion, die den String '$foo' oder 'foo' zurückgibt?
Ja. PHP stellt eine Funktion zur Verfügung, mit der man alle definierten Variablen des Scriptes ermitteln kann: http://de.php.net/manual/de/function.get-defined-vars.php
Dieses Array kann man dann nach dem Wert durchsuchen lassen mit
http://de.php.net/manual/de/function.array-search.php
also ist der Name der gesuchten Variablen:
$name = array_search('bar',get_defined_vars());
Liebe Grüße aus http://www.braunschweig.de
Tom
Vielen Dank an alle!
Dieter