PHP Richtigen Array im Array im Array suchen und dann einen Parameter aus unter Array ausgeben

Wolly300

Lt. Junior Grade
Dabei seit
Mai 2014
Beiträge
269
#1
Hallo zusammen,

ja der Titel hört sich grauenhaft an, aber das ist jetzt gerade mein Problem.

Hier mal das Beispiel

PHP:
$i = Array ([0] => da [1] =>  Etwas [2] => wieder etwas  [3] => noch etwas [4] => [A] => 
          Array ( [0] => Array ( [suche ich] => Tim [Wert1] => keine Ahnung0 [Wert2]  => wieder keine Ahnung0 [Wert3] => Array (...)) 
                     [1] => Array ( [suche ich] => Tom [Wert1] => keine Ahnung1 [Wert2]  => wieder keine Ahnung1) [Wert3] => Array (...))
                     [2] => Array ( [suche ich] => Alex [Wert1] => keine Ahnung2 [Wert2]  => wieder keine Ahnung2 [Wert3] => Array (...))
                     [3] => Array ( [suche ich] => Lisa [Wert1] => keine Ahnung3 [Wert2]  => wieder keine Ahnung3 [Wert3] => Array (...))
      )
)
Ok wie suche ich jetzt nach dem Array, in dem bei ['suche ich'] "Alex" steht ? Ich kenne den Weg $i['4']['A'] aber wie geht es dann weiter ? Ich weiß ja nicht welche nummer der Array hat in dem Alex steht ?

Wenn ich den richtigen Array habe, möchte ich etwas aus dem Array unter ['Wert3'] ausgeben, das sollte doch glaube ich kein Probelm sein ?

Danke für eure Hilfe.
 
Dabei seit
Dez. 2013
Beiträge
4.174
#3
Naja drüber iterieren?
Dann für das jeweile array mit array_search('Deine_Suche', $array) Treffer suchen.

PHP:
foreach($i['4']['A'] as $arr){
    if(array_search('SUCHE', $arr) === true)
        echo $arr['Was du ausgeben willst'];
}
 

Mercsen

Lt. Commander
Dabei seit
Apr. 2010
Beiträge
1.465
#4
mehr als jedeselement durchsuchen kannst nicht machen, wie meine vorredner schon sagten.
Außer natürlich nochmal über deine daten strucktur nachdenken! array in array in array in dem man etwas finden will ist grauenhaft. da steigt auch irgendwann keiner mehr durch.
ansonsten den array vorsortieren und "indizieren"
vlt. hast ein wenig mehr Kontext was du machst?
 
Top