phpbar.de logo

Mailinglisten-Archive

[php] variable Variablennamen bei Arrays

[php] variable Variablennamen bei Arrays

Jens Giessmann jg at handcode.de
Don Nov 11 22:56:47 CET 2004


Hi,

On Thu, Nov 11, 2004 at 10:45:58PM +0100, Norbert Pfeiffer wrote:
> Hi Lutz,
> 
> es freut mich, dass Du Jens verstanden hast,
> aber ich verstehe Deine Loesung nicht, bzw.
> sie laeuft hier nicht ...
> Die Zeile:
> $dynArray = ${$name};
> erzeugt den von Jens geposteten Fehler, womit
> das nachfolgende foreach() in Leere laeuft ...

Ja, da muss meine foreach, die den 

data['name1']['name2']

string erzeugt raus. siehe auch meine neues Beispiel, Ich denke so
hatte Lutz seins auch getestet.

Also im Prinzip
$name = 'data';
$dynArray = ${$name};

oder eben gleich
$dynArray = $data;

> Aber wenn man das 'boese' eval(); bemueht wird
> es auch wirklich sehr einfach:
> <?
> $name = "\$ergs = \$data['".implode($keys, "']['")."'];";
> eval($name);
> echo '<B>E:</B> '.$ergs."\n";
> ?>

:-) 

Mit eval hatte ich kurz gespielt, es dann aber wieder verworfen.

-- 

Gruss Jens

php::bar PHP Wiki   -   Listenarchive