我该如何简化:
if($quantity == 0)
$basket_item['status_text'] = 'out of stock';
else if($quantity >= $requested)
$basket_item['status_text'] = 'available';
else if($quantity < $requested)
$basket_item['status_text'] = 'not enough in stock';
正如您所看到的,我每次都必须继续定义$basket_item['status_text']
变量。
编辑:刚修好代码
答案 0 :(得分:1)
是的,你可以。
只需这样做:if($quantity == 0 || $quantity < $requested)
您的代码如下:
if($quantity == 0 || $quantity < $requested)
$status_text = 'not in stock';
// $basket_item['status_text'] = 'not in stock';
else if($quantity >= $requested)
$status_text = 'available';
我评论过一行,那是因为我猜你只使用$status_text
变量,但没有使用另一行。
答案 1 :(得分:1)
您可以按下面的function
function defineStatus($quantity,$requested) {
if($quantity == 0)
return 'out of stock';
else if($quantity >= $requested)
return 'available';
else if($quantity < $requested)
return 'not enough in stock';
}
现在调用您想要做出此状态决定的功能。
$basket_item['status_text'] = defineStatus($quantity,$requested);