PHP方法失败

时间:2015-03-18 08:53:49

标签: php function quickbooks

我有一些用于访问数据库值的方法。 如果我在null值上运行一个方法,它会给出错误,这就是假设要发生的事情,但是我想放入条件,即使函数失败,也应该进入数据库中的下一行。

$i=0;
foreach($data as $Data){
   $fax = $Data->getFax()->getFreeFormNumber();
   echo $i." Fax no. of Customer ".$fax;
   $i++;
}

输出是: -

  1. 传真号码客户5678

  2. 传真号码客户9899

  3. 传真号码客户7777
  4. 但是数据库有19行,第5行有传真号。在数据库和第4行传真号码。为空(null)

    如何将代码打印到第5行。?我需要放入什么条件。?

2 个答案:

答案 0 :(得分:1)

在致电getFax之前,您必须先检查null返回getFreeFormNumber()。关于如何实现这一目标的一个例子如下。

$i=0;
foreach($data as $Data){
   $fax = $Data->getFax();
   if(null === $fax){
        continue; // No fax so continue to the next item
   }

   echo $i." Fax no. of Customer ".$fax->getFreeFormNumber();
   $i++;       
}

为了使其更加安全,请重复检查getFreeFormNumber()的结果。然后,您可以确定您没有处理null值。

或许getFax()甚至应该返回某种类型的对象/类,在这种情况下,将null === $fax更改为!($fax instanceOf <theClassName>)。这样,您就可以确保获得具有您要调用的功能的传真对象。

答案 1 :(得分:0)

您可以使用isset例如:

if (isset($faxNo)){
    echo $faxNo;
}else {
    echo "null";
}