Guten morgen,
Also ich habe folgedes (PHP-)Problem:
Ich muss mittels PHP ausrechnen ob die ausgewählten Artikel in ein paket passen.
Ich habe verschieden Artikel in verschiedenen Größen (verpackt)
Nun muss mir PHP sagen ob die ausgewählten Artikel in das Paket passen (verschieden Paketgrößen verhonden)
Dass ich also eine Schleife von der Größe des kleinsten Paketes bis zu der des Größten laufen lasse und sobald es reinpasst soll er abbrechen und mir sagen welches Paket verwendet werden soll.
Also das mit der Schleife ist ja klar.
Beispiel:
$pakete = array();
$pakete[0] = ["20|20|30"]; //20X20X30cm
$pakete[1] = ["50|60|50"]; //50X60X50cm
$pakete[2] = ["90|120|150"]; //90X120X150cm
foreach ($pakete as $grösse) // Schleife :)
{
$lbh = explode("|",$grösse); // trennen in länge breite höhe
$l = $lbh[0]; // Länge
$b = $lbh[1]; // Breite
$h = $lbh[2]; // Höhe
if ($l <= $l_gegeben && $h <= $h_gegeben && $b <= $b_gegeben)
{
$paketgrösse = $grösse;
break;
}
}
Ich habe jetzt das array $artikel, in denen Höhe Länge und Breite jeweils als einzelnes Element gespeichert ist.
(höhe|länge|breite).
Wie bekomme ich das jetzt hin, dass mir PHP ausrechnet ob das in das kleinste, das nächstgrößte Paket usw reinpast?
Also so dass nachher die Variablen $l_gegeben, $h_gegeben und $b_gegeben dem Umfang des Paketes ergeben, das benötigt werden würde wenn man es am geschicktesten stapelt?
Ich weiss jetzt nicht ob das verständlich war, nochmal kur in einem Satz:
Die Artikel sollen in das kleinste Paket in das Sie reinpassen weil kleineres Paket => Niedrigere Versandkosten.
Ich hab mir schon überlegt, dass ich vielleicht das Volumen ausrechne und das dann am ende wieder zusammenzähl.
Das geht aber auch nicht, weil wenn man die Artikel so Stapelt bleibt ja immer irgendwo ein Leerraum weil die ja nicht alle quaderförmig und gleichgroß sind...
ICh zerbrech mir nun schon seit fast 3 Tagen den Kopf, find aber nichts.
Gibt es nicht zufällig eine Funktion berechnepaketgroesse($array_länge,$array_höhe,$array_breite) *g* ?
Naja wäre nett wenn mir jemand helfen könnte, weiss echt nicht mehr weiter...
Vielen Dank für Tipps, Tricks und Anregungen, Michael.