Tach.
Es gibt also immer einen "umgekehrten" Schlüssel
Diese Schlüssel mit den Werten möchte ich gerne löschen.
Du möchtest also immer einen Arrayeintrag dieses "Paars" löschen?
Falls Du sicher weißt, daß zu *jedem* Eintrag einer mit solch umgekehrtem Schlüssel existiert, kannst Du mit usort Dein Array sortieren. Dabei ist nur wichtig, daß die Vergleichsfunktion die beiden Teile eines Paars als "gleich" erkennt. Nach der Sortierung stehen dann immer beide Einträge eines solchen Paars hintereinander im Array. Jeden zweiten löschen. Fertig. Funktioniert aber wie gesagt nur dann, wenn wirklich zu jedem Eintrag ein Gegenstück existiert. Ansonsten verlierst Du ungewollt Einträge!
Ich frag lieber nicht nach, wie es überhaupt zu dieser komischen Struktur kommt. Vielleicht wäre es aber wesentlich einfacher, an der Stelle, wo sie zusammengebaut wird, solche "Duplikate" auszusortieren anstatt sie ins Array zu stecken.
Once is a mistake, twice is Jazz.