Marcel: Selektierte Array Ausgabe

Hallo,

ich habe einen Array sortiert nach "Artikel Nr." und "Vk Preis". Es
kann vorkommen, das der gleiche Artikel mit der gleichen Artikel Nr.
mehrfach in dem Array enthalten ist (von verschiedenen Lieferanten)

Beispiel:
id bezeichnung art_nr lagerbest vk_preis
0 artikel_1 1000 5  100,00
1 artikel_1 1000 8  102,00
2 artikel_1 1000 0  105,00
3 artikel_2 1001 0  90,00
4 artikel_2 1001 5  95,00
5 artikel_2 1001 2  98,00

Wie kann ich den Array so ausgeben, das ausschließlich der Artikel
mit dem günstigsten Preis - und nur wenn von diesem der Lagerbestand =
0 ist, der Artikel mit dem zweit günstigsten Preis usw. ausgegeben
wird?
Nach dem Beispiel oben sollten die Artikel mit der id=0 und id=4
angezeigt werden.

Wichtig ist natürlich, das die Ausgabe auch bei einer Liste von 50 und
mehr Artikeln noch mit einer akzeptablen Geschwindigkeit läuft.

Hat jemand einen Tipp für mich?

Danke + Gruß

Marcel

  1. Hellihello

    Hat jemand einen Tipp für mich?

    Warum legst du nicht ein neues Array an?

    $result["artikel_id1"]=1.5; //preis

    dabei duchrläufst du dein ursprüngliches Array, checkst, ob es im result schon einen Eintrag gibt (if (isset..)) und vergleichst dann den Preis.

    Vorher natürlich den die Lieferbarkeit testen (if($artile["lieferbarkeit"]=0) continue;).

    Dank und Gruß,

    frankx

    --
    tryin to multitain  - Globus = Planet != Welt
  2. Hi,

    Wie kann ich den Array so ausgeben, das ausschließlich der Artikel
    mit dem günstigsten Preis - und nur wenn von diesem der Lagerbestand =
    0 ist, der Artikel mit dem zweit günstigsten Preis usw. ausgegeben
    wird?

    Alternative zu Franks Vorschlag, im Vorfeld das Array entsprechend aufzubauen: Gruppenwechsel, unter Hinzunahme der oben genannten Zusatzbedingung.

    MfG ChrisB

    --
    "The Internet: Technological marvel of marvels - but if you don't know *what* you're lookin' for on the Internet, it is nothing but a time-sucking vortex from hell."