我从mySQL返回以下数据:
阵 ( [0] => stdClass对象 ( [id] => 1 [list_id] = 2 [price] => 10 [tax_type] =>习惯 )
[1] => stdClass Object
(
[id] => 2
[list_id] = 2
[price] => 10
[tax_type] => freezone
)
[2] => stdClass Object
(
[id] => 3
[list_id] = 3
[price] => 10
[tax_type] => freezone )
[3] => stdClass Object
(
[id] => 4
[list_id] = 3
[price] => 10
[tax_type] => custom )
)
数据基本上显示了一个订单中的多次购买(例如,3次购买,具有不同的产品价格/税级)。
我可以通过以下方式检索价格:
foreach($array_data as $out) {
foreach($out as $inner) {
$sum['price'] += $inner->price;
}
}
但是我在添加条件时遇到了困难,例如,如果我这样做:
if ($tax_type == "custom") {
$sum['price'] += $inner->price;
$tax_band = ($tax_rate / 100) * $inner->price;
$tax band = round($tax_band, 2);
} else {
$sum['price'] += $inner->price;
$tax_band = ($tax_rate / 100) * $inner->price;
$tax band = round($tax_band, 2); }
工作正常 - 但是我在这里有第三种情况 - 如果一个数组项目同时包含自定义/自由区状态,它似乎对我的状况不太好,因为我喜欢迭代数组并计算出各个价格税带,而不是将它们全部设为一个项目。
答案 0 :(得分:0)
您可以使用elseif或switch语句。
elseif语句的一个例子是:
if ($tax_type == "custom") {
//logic for custom
}
elseif($tax_type == "freezone"){
//logic for freezone
}
elseif($tax_type == "custom/freezone") {
//logic for custom/freezone
}