使用多个条件语句将值赋给变量

时间:2014-01-21 10:47:21

标签: php

我该如何简化:

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']变量。

编辑:刚修好代码

2 个答案:

答案 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);