检查空白值是否按预期工作

时间:2013-08-22 06:43:57

标签: php

我写了下面的代码,即

foreach($mainStockDetailsRows as $mainStockDetailsRow)
    {
        $sumQuantity = '';
        if(count($attrStocks["$mainStockDetailsRow->id_product"]) > 0)
        {
            $sumQuantity = array_sum($attrStocks["$mainStockDetailsRow->id_product"]);  
        }else{
            $sumQuantity = 0;
        }
        //$sumQuantity = trim($sumQuantity);

        if(($sumQuantity >= 0) && ($sumQuantity != ''))
        {
            $return .= 'somevalue';
            $return .= ";\n";   
        }

    }   

此处条件if(($sumQuantity >= 0) && ($sumQuantity != ''))在使用值的修剪之前根本不起作用。我在这段代码中没有弄错。代码中有错误吗?即使$ sumQuantity值为0,它也不会进入if条件。

---答案 -

我在http://in2.php.net/types.comparisons

中得到了答案

获得的经验教训:小心比较。

1 个答案:

答案 0 :(得分:3)

更改

if(count($attrStocks["$mainStockDetailsRow->id_product"]) > 0)

if(count($attrStocks[$mainStockDetailsRow->id_product]) > 0)

在这里:

$sumQuantity = array_sum($attrStocks[$mainStockDetailsRow->id_product]);  

删除双引号 ...然后它会起作用。您不会转到第一个if condition本身,因此您没有正确获得$sumQuantity值。