Christian: Mehrdimensionale Arrays

Beitrag lesen

Hi,
ich bin gerade dabei eine Bookmark funktion zu schreiben bei der es möglich sein soll Pfade einzufügen für eine bessere Übersichtlichkeit.
Jetz ist folgendes Problem aufgetreten:

ich habe ein Array das so aussieht:

array
   (
     [0] = verz0
     [1] = verz1
     [2] = verz2
   )

dieses array versuche ich in folgendes umzuwandeln:

array
   (
    [verz0] => Array
        (
            [verz1] => Array
                (
                    [verz2] =>
                )

)
   )

dabei ist noch zu sagen, daß die Anzahl und die Namen natürlich variabel sind.

Dies versuche ich so:

$ct = count($path)-1; // $path ist das oben erste Array
$ct_tmp = $ct;

// Ordner nur eine Ebene tief
if($ct == 0) { $tmp[$path[$ct_tmp]] = ""; }

// Ordner mehrere Ebenen tief
else
   {
   while($ct_tmp != -1)
      {
      // Erster durchlauf / letzter Ordner
      if($ct_tmp == $ct) { $tmp2 = array( "$path[$ct_tmp]" => ""); }

// Zwishendurchlauf
      else if($ct_tmp != 0)
         {
         $tmp2["$path[$ct_tmp]"] = $tmp2;
         }

// letzter Durchlauf
      else
         {
         $tmp["$path[$ct_tmp]"] = $tmp2; // hier werden beide Arrays zusammengeführt $tmp und $tmp2
         }
      $ct_tmp--;
      }
   }

wenn ich nun aber print_r($tmp) eingebe bekomme ich folgende Ausgabe:

Array
(
    [test] =>            // Pfade ohne Tiefe
    [sdhfgsdhkgf] =>             // Pfade ohne Tiefe
    [test3] =>             // Pfade ohne Tiefe
    [verz0] => Array
        (
            [verz2] =>           // hier ist der Hund begraben warum verz2 ??????
            [verz1] => Array
                (
                    [verz2] =>
                )

)

)