foreach mit arrays

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • foreach mit arrays

    Hallo,

    mit einer foreach-Schhleife arbeite ich ein array ab und füge dem array innerhalb der Schleife weitere Einträge hinzu. Diese neuen Einträge werden beim Abarbeiten aber nicht berücksichtigt (was zu erwarten war).

    Bin ich auf der richtigen Fährte, wenn ich die foreach-Schleife als Methode in eine Klasse codiiere, die sich selbst aufruft?

  • #2
    foreach() arbeitet mit einer kopie des arrays, daran wird auch nichts ändern, wenn du es in einer klasse aufrufst.

    zeig mal code und beschreib, was du machen möchtest.

    Kommentar


    • #3
      Ich habe Abteilungen in einer MySQL Tablelle gespeichert. In jedem Abteilungen-Eintrag ist die übergeordnete Abteilung bgespeichert.

      Die foreach Schleife soll mir ein array liefern, in dem alle untergeordneten Abteilungen einer Abteilung stehen (über alle Hierarchie-Stufen hinweg). Mit der jetzigen Schleife werden nur die Abteilungen geliefert, die direkt unter der Einstiegs-Abteilung angeordnet sind.

      Hier der Code:
      $abteilungen = array ();
      $row = $db->db_com_get_next_result();
      $index = $row["Abteilung"];
      $abteilungen["$index"] = $row["Abteilung"];
      foreach ($abteilungen as $abteilung) {
      $anzahlbeginn = count($abteilungen);
      $sql = "SELECT Abteilung FROM abteilungen WHERE Unternehmen='$unternehmen' AND UebergeordneteAbteilung='$abteilung' ";
      if (!$db->db_com_query($sql)) {
      echo "Abfrage der Abteilungen-DB fehlgeschlagen<BR>" . $db->db_com_get_last_error() . "<BR>";
      }
      while ($row = $db->db_com_get_next_result()) {
      $index = $row["Abteilung"];
      $abteilungen["$index"] = $row["Abteilung"];
      }
      $anzahlende = count($abteilungen);
      if ($anzahlende == $anzahlbeginn) {
      break;
      }

      Kommentar

      Lädt...
      X