variable Array Tiefe

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • reallife
    replied
    Hmm..
    PHP Code:
    $arr_temp[] = "hallo";
    $arr_temp[] = " ";
    $arr_temp[] = "Welt";
    $arr_temp[] = "!!";

    for ( 
    $i 0$i sizeof($arr_temp); $i++ )
      echo 
    $arr_temp[$i]; 
    Schwieriger wäre es, wenn du noch ein Array im Array hast:
    PHP Code:
    $arr_temp[] = "Hallo";
    $arr_temp[] = " ";
    $arr_temp[] = "Welt";
    $arr_temp[] = array(', wie ist das Wetter heute?');
    $arr_temp[] = "Beschissen..";

    function 
    arr_print($arr)
    {
      for ( 
    $i 0$i sizeof($arr); $i++ )
      {
        
    $curr = &$arr[$i];
        if ( 
    is_array($curr) )
          
    arr_print($curr);  // rekursiver aufruf dieser Funktion..
        
    else
          echo 
    $curr;
      }
    }

    arr_print($arr_temp); 
    Sollte dein verschachteltes Array ein gemischtes, also ein assoziatives und ein numerisches Array sein, dann würde ich es so machen:
    PHP Code:
    $arr_temp[] = "Hallo";
    $arr_temp['test_1'] = " ";
    $arr_temp[] = "Welt";
    $arr_temp['test_2'] = array('test' => ', wie ist das Wetter heute?');
    $arr_temp[] = "Beschissen..";

    function 
    arr_print($arr)
    {
      foreach ( 
    $arr as $k => $v )
      {
        if ( 
    is_array($v) )
          
    arr_print($v);  // rekursiver aufruf dieser Funktion..
        
    else
          echo 
    $v;
      }
    }

    arr_print($arr_temp); 
    Ich hoffe ich hab dir helfen können.

    Leave a comment:


  • Le_Cheffe
    replied
    Original geschrieben von schmalle
    wo ist jetzt genau das problem? Ich würde sagen for() oder foreach(), je nach array- Typ
    Hi !

    Mein Problem ist, dass ich das ganze gerne allgemeingültig für alle Fälle lösen würde, also höchstens die "Anzahl der Tiefe" habe, aber ich nicht weiß, wie ich dann (je nach Tiefe) das Array so angeben soll, dass es immer stimmt.

    PHP Code:

    $anz 
    count($x); // Tiefe des Arrays

    // hier Schleife hin ... 
    Soweit so gut, aber mal drei Beispiele genommen.

    - $anz sei 1, dann habe ich $ergebnis[$x[0]]
    - $anz sei 2, dann habe ich $ergebnis[$x[0]][$x[1]]
    - $anz sei 3, dann habe ich $ergebnis[$x[0]][$x[1]][$x[2]]
    usw.

    Vielleicht übersehe ich eine einfach Möglichkeit, aber irgendwie will mir keine Möglichkeit einfallen, dieses in einer Schleife so zu konstruieren, dass ich das eben für $anz > 0 hinbekommen würde.

    Gruß

    Le Cheffe

    Leave a comment:


  • schmalle
    replied
    wo ist jetzt genau das problem? Ich würde sagen for() oder foreach(), je nach array- Typ

    Leave a comment:


  • Le_Cheffe
    started a topic variable Array Tiefe

    variable Array Tiefe

    Hi !

    Zu folgendem hätte ich gerne gewusst, ob das irgendwie variabel geht.

    Dieses Array habe ich beispielsweise ... (könnte auch 1 oder 3 oder mehr keys/values enthalten)

    PHP Code:

    $x 
    = array ([0] => 1, [1] => 5); 
    Nun würde ich gerne wissen, ob es möglich ist, über eine Schleife (oder andere Konstrukte), damit auf ein zweites Array $ergebnis[$x[0]][$x[1]] zuzugreifen.

    Natürlich sollte es. wenn z.B.
    PHP Code:
    $x = array ([0] => 4
    ist, dann auch auf $ergebnis[$x[0]] zugegriffen werden.

    Gruß

    Le Cheffe
Working...
X