teddy86: assoziatives Array

Guten Abend!

Mit $kategorien[] = $zeile["kategorieID"]; hänge ich kategorieID an ein Array. Ich möchte nun aber ein asozziatives Array erzeugen, dass folgende Strucktur hat:

$kategorien[kategorieID][kategorieName]

was ich wie folgt versucht habe:

$kategorien[$zeile["kategorieID"]] = $zeile["kategorieName"];
bzw.
$kategorieID = $zeile["kategorieID"];
$kategorien[$kategorieID] = $zeile["kategorieName"];

Dies klappt leider nicht. Ich habe kein Plan, wie dass anders funktionieren soll. Bin für einen Hinweis dankbar.

Danke, teddy

  1. $kategorien[$zeile["kategorieID"]] = $zeile["kategorieName"];

    hat geklappt.

    Das Problem ist folgendes:

    Ich versuche nun dieses Assoziative Array mit einem weiteren Zusammenzuführen:

    $kategorien = array_merge($kategorien, $subkategorien);

    durch array_merge() existieren danach nurnoch die Arraywerte, aber nicht mehr die keys. Wie füge ich also zwei assoziative Arrays zusammen, ohne die keys zu verlieren?

    Gruß Teddy

    1. Hello,

      durch array_merge() existieren danach nurnoch die Arraywerte, aber nicht mehr die keys. Wie füge ich also zwei assoziative Arrays zusammen, ohne die keys zu verlieren?

      Über welchen Key sollen Sie denn zusammengeführt werden?

      Harzliche Grüße vom Berg
      http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau

      1. Über welchen Key sollen Sie denn zusammengeführt werden?

        Es sind zwei Arrays:

        1.Array:
        Array( 1 => Kühlschrank, 10 => Waschmaschine, 25 => Toaster )

        2. Array
        Array( 2 => Mixer, 15 => Wasserkocher, 30 => Kochtopf )

        Darauß soll sich das Array:

        Array( 1 => Kühlschrank, 2 => Mixer, 10 => Waschmaschine, 15 => Wasserkocher, 25 => Toaster, 30 => Kochtopf ) ergeben.

        Lösung:

        $Array3 = $Array1 + $Array2;

        Gruß Teddy86

        1. Hello,

          Über welchen Key sollen Sie denn zusammengeführt werden?

          Lösung:

          $Array3 = $Array1 + $Array2;

          Ja, so einfach geht das.
          Aber schau auch mal, was passiert, wenn in beiden Arrays identische Schlüssel enthalten sind.

          Außerdem wolltest Du "Subkategorien" einfügen.
          Da geht das dann nicht so einfach, da die Hauptkategorie eventuell schon mit einem String belegt ist, der ja wohl gerettet werden soll?

          Harzliche Grüße vom Berg
          http://www.annerschbarrich.de

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          Nur selber lernen macht schlau