tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
473
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    'GreenDragon' 'GreenDragon' ist offline Mitglied Gold
    Registriert seit
    Apr 2007
    Beiträge
    127
    Hi,
    ich hab ein assoziatives Array welches wiederum als Values wieder assoziative Arrays hält. Und das in unterschiedlicher Tiefe. Jetzt suche ich genau das Array, das meinen gesuchten Key inne hat.
    Also:
    PHP-Code:
    array(
    => array(),
    => array(
        
    => array(
            
    d=> array(),
            
    e=> array(),
        ),
    ),
    ); 
    So ich habe nun e als Schlüssel und suche das Array wo e drinne ist also c. Besser gesagt ich such eigentlich den Pfad zu meinem e.
    PHP-Code:
    $wurzel[bekannt][?][?]...[c][e
    Ich brauche also alle Schlüssel bis e.
    Geändert von 'GreenDragon' (10.11.10 um 12:53 Uhr)
     

  2. #2
    Avatar von sheel
    sheel sheel ist gerade online Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.504
    Und was ist jetzt die Frage?

    Lauf den ganzen Baum rekursiv durch.

    edit: Jetzt steht da, was er braucht...geht doch
    Geändert von sheel (10.11.10 um 14:22 Uhr)
     

  3. #3
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    geht warscheinlich noch schöner...

    PHP-Code:
    <?php 
    $array 
    = array(
                
    'a' => array(),
                
    'b' => array(
                        
    'c' => array(
                                
    'd'=> array(),
                                
    'e'=> array(),
                            )
                        )
                );

    $pathArray search($array'e');
    krsort($pathArray);

    echo 
    implode('->'$pathArray);

    function 
    search($array$searchKey){
       foreach(
    $array as $key => $value){
           if(
    $key == $searchKey){
               return array(
    $key);
           }elseif(
    is_array($value)){
               
    $retVal search($value$searchKey);
               if(
    is_array($retVal)){
                   
    $retVal[] = $key;
                   return 
    $retVal;
                   
               }           
           }
       } 
       return 
    false;


    ?>
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 03.01.11, 10:13
  2. assoziatives array nach value sortieren
    Von bierspritzn im Forum Algorithmen & Datenstrukturen mit Java
    Antworten: 2
    Letzter Beitrag: 21.10.08, 13:44
  3. Antworten: 0
    Letzter Beitrag: 10.01.08, 17:22
  4. Antworten: 6
    Letzter Beitrag: 05.03.07, 21:51
  5. array nach einem wert durchsuchen
    Von jackobo im Forum PHP
    Antworten: 8
    Letzter Beitrag: 28.10.05, 13:36