我将某些范围保存在数组中,索引 [3] 处的价格和索引 [4] 处的折扣类型(%,固定)。在这些范围内购买的任何人都应该获得可用的折扣。我当前的问题是数组的范围可以是任何数量,例如在变量中$a
,有4 nested array
,但在某些情况下,我会做6 nested array
,或8 nested array
,依此类推。
所以,我在我的 switch 语句中运行 for 循环,我得到了一个错误Parse error: syntax error, unexpected 'for' (T_FOR), expecting case (T_CASE) or default (T_DEFAULT) or '}'
。
这是我的代码:-
<?php
$a = array(array('0', '10', '200', '0'), array('11', '20', '20', '1'), array('20', '50', '25', '1'), array('50', '100', '5000', '0'));
$quantity = 25;
$count = count($a);
switch($quantity) {
for($i=0;$<=$count-1;$i++) {
case ($quantity > $a[$i][0] && $quantity < $a[$i][1]) :
echo "Discount Available for Quantity > ".$a[$i][0]." and < ".$a[$i][1];
break;
}
default:
echo 'No Discount';
break;
}
?>
我应该如何为上述场景设计我的算法。
注意:阵列类型:-
$variable = array ("lowest_quantity_range", "highest_quantity_range", "discount_value", "discount_type");
折扣类型将是1
for%
或0
for fixed
amount