Assoziatives Array mit Schleife erstellen?

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

  • Assoziatives Array mit Schleife erstellen?

    Hallo!

    Ich habe ein assoziatives Array erstellt, doppelte Einträge ausgesiebt und sortiert. Das Script braucht aber sehr lange zum ausführen, warum?

    ----------------------------------------------------------------------------

    while ($i<count($kategorien)){
    $erg = split("_",$kategorien[$i]);
    $kategorien_liste[$erg[0]] = "$".$erg[0];
    $i++;
    }

    $kategorien_liste = array_unique($kategorien_liste);
    asort ($kategorien_liste);

    ----------------------------------------------------------------------------

    Wie man sieht splitte ich die Werte aus dem Array $kategorien und
    möchte sie dann als Variable ins Array $kategorien_liste einfügen.
    Deshalb als Variable, weil ich später aus jedem Element des Arrays
    $kategorien_liste, ebenfalls ein Array erstellen möchte, um diesem dann
    wieder neue Werte zufügen zu können.

    Würdet ihr das anders machen?



    Gruß
    NetLook

  • #2
    was heißt den "sehr lang" genau, in sekunden?
    solche manipulationen mit strings sind generell ziemlich aufwändig, afaik.

    evtl. wär's von anfang an besser, kategorien in einer db zu verwalten, oder zumindest irgendwie extern..

    Kommentar


    • #3
      Hallo! Länger als 30 sekunden, wie könnte man denn sonst ein assoziatives Array mit einer Schleife erstellen?

      Kommentar


      • #4
        so viel? dann wird's nicht an diesem code liegen, denke ich..

        nimm mal count aus der bedingung.
        wie groß (in byte) ist denn $kategorien?

        Kommentar


        • #5
          So klappt es!

          foreach ($kategorien as $kats){
          $erg = explode("_",$kats);
          $kategorien_liste[$i] = $erg[0];
          $i++;
          }

          $kategorien_liste = array_unique($kategorien_liste);
          asort ($kategorien_liste);

          Kommentar

          Lädt...
          X