Lieber X,
foreach ($fruechte as $frucht => $pflanze) {
// Wenn $frucht 'Apfel' enthaelt, moechte ich auch auf 'Traube' zugreifen koennen, wenn $frucht 'Traube' enthaelt, auch auf 'Haselnuss'
}
Du hast ein assoziatives Array. Die Folge der Indices lässt sich daher nicht logisch ermitteln. Ich weiß nicht, an welcher (numerischen!) Stelle z.B. die Haselnuss steht.
Aber: Ich kann mir ein numerisches Array mit allen Indices des assoziativen Arrays generieren lassen. Wenn ich das entsprechende $key/$value-Paar aus diesem numerischen Array habe, kann ich automatisch aus diesem numerischen Array den "nächsten" Index des ursprünglichen (assoziativen) Arrays holen.
Im Grunde wirst Du Dir für Dein assoziatives Array ein "Helfer-Array" dynamisch erzeugen müssen, um mit dessen Hilfe eine numerische Übersicht über Deine Array-Schlüssel zu haben. Eine numerische Übersicht über die _Werte_ bekommst Du entsprechend mit array_values().
Um schneller den numerischen Index eines ursprünglichen $keys oder $values zu ermitteln, könnte es sinnvoll sein, das Helfer-Array umzukehren, sodass die numerischen Indices zu Werten und die Werte zu Indices werden. Im Falle der "ehemaligen Indices" dürfte das kein Problem sein, da bei diesen sichergestellt ist, dass sie einmalig sind.
Liebe Grüße,
Felix Riesterer.
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)