有没有一种简单的方法来计算产品订单所需的纸箱?

Is there an easy way to calculate the required carton for an order with products?

对于我的订单系统,我需要根据订单确定我需要哪个纸箱。

例如:

订单 A 有 3 件商品:

订单 B 有 2 件商品:

可用纸箱的内部尺寸:

还要计算每个 product/size 的 0.5cm 边距 所以 ProductA 将是 15,5x10,5x5,5cm,ProductB 将是 20,5x10,5x5,5cm

现在每个人都会看到,OrderA 需要 CartonC,OrderB 需要 CartonB。

但是我们应该如何计算最快呢? 我知道我可以计算体积 (LxWxH),但这并不总是有效。 $volumeA = $widthA*$heightA*lengthA;

也只是把所有尺寸加起来不行:

$width = $widthA+$widthB; // return 36cm

虽然我们可以将它们并排放置,而不是紧挨着放置。

有什么想法吗? Google 仅显示在线计算器。 但我需要一个解决方案,让我立即找到正确的纸箱类型。

提前致谢!

$availableCarton = array("cartonA"=>array("length"=>20,"height"=>10,"width"=>10),"cartonB"=>array("length"=>20,"height"=>20,"width"=>10),"cartonC"=>array("length"=>30,"height"=>20,"width"=>15));
foreach($products as $product){
    //do some maths here
}
echo $neededCarton;

我已经找到了解决方案:boxpacker.io

Boxpacker 甚至向我们展示了物品在箱子中的放置方式。