phpbar.de logo

Mailinglisten-Archive

[php] Variable Variabeln

[php] Variable Variabeln

Dominik Brumm dominik.brumm_(at)_voodooweb.com
Mon, 18 Sep 2000 20:54:23 +0200


Ich habe das Problem mit einer Funktion gelöst die sich falls nötig
rekursiv aufruft. Ich poste hier einmal den Code. Wenn jemand
eine Verbesserungmöglichkeit (vorallem Speicher-, CPU-Belastung)
sieht, wäre ich dankbar da die Funktion oft gebraucht wird.

 function get_var($var_name, $var_array=0){
  if($var_array == 0){
   $var_array = $this->OBJECTS;
  }
  reset($var_array);
  $vars = explode(".", $var_name);
  if($vars[0] == "GLOBAL"){
   return $GLOBALS[$vars[1]];
  }
  while(list($index, $value) = each($var_array)){
   if(strtolower($index) == strtolower($vars[0])){
    break;
   }
  }
  if(count($vars) > 1){
   unset($vars[0]);
   $value = $this->get_var(implode(".", $vars), $value);
  }
  return $value;
 }


gruss dominik


----- Original Message -----
From: "Alexander Wagner" <wagner_(at)_globalpark.de>
To: <php_(at)_php-center.de>
Sent: Monday, September 18, 2000 2:57 PM
Subject: Re: [php] Variable Variabeln


> > Ich habe natürlich bereits ein bisschen gepröbelt wie das etwa
> > funktionieren könnte.
> > Eine Möglichkeit die ich gefunden habe sieht folgendermasen aus:
> > echo ${"this->VARS"}[index1][index2] (ohne this getestet)
> > Die [index] müssen ausserhalb der {}-Klammern stehen, ist auch im
> > Manual beschrieben.
> > Leider habe ich es bis jetzt nicht geschafft das Ganze so in ein String
> > zu verpacken, dass ich es nachher als variable Variabel brauchen kann.
> > Sieht noch jemand eine Lösung??
>
> So weit hab ich mich nie mit variablen Variabeln beschäftigt. Probier
> noch n bißchen, wenns nicht klappt, probiers mit eval().
>
> Gesundheit
> Wagner
>
> --
> ** Durchgehend geöffnet: http://www.php-center.de **
> Die PHP-Liste: mailto:php_(at)_php-center.de
> http://infosoc.uni-koeln.de/mailman/listinfo/php
>
>



php::bar PHP Wiki   -   Listenarchive