检查XML文件中是否包含getElementsByTagName

时间:2017-04-10 17:33:03

标签: php xml

有时FinalValueFee未包含在我尝试解析的XML DOMDocument中。 如果不是这种情况,我想$finalvaluefee = NULL

我已经尝试了!empty

    $getfinalvaluefee = $doc->getElementsByTagName("FinalValueFee");

    if (!empty($getfinalvaluefee)) {
    $finalvaluefee2 = $getfinalvaluefee->item(0)->nodeValue;
    $finalvaluefee = mysqli_real_escape_string($connect, $finalvaluefee2);
    }

    else {
        $finalvaluefee2 = NULL;
        $finalvaluefee = mysqli_real_escape_string($connect, $finalvaluefee2);
    }

但我收到此错误:

  
    

注意:尝试获取非对象的属性

  

代码行$finalvaluefee2 = $getfinalvaluefee->item(0)->nodeValue;

我也试过isset,因此:

if (isset($getfinalvaluefee)) {
    $finalvaluefee2 = $getfinalvaluefee->item(0)->nodeValue;
    $finalvaluefee = mysqli_real_escape_string($connect, $finalvaluefee2);
}

仍然是同一行的相同错误。

  
    

注意:尝试获取非对象的属性

  

因此看起来!emptyisset无效,并且在这些情况下,无论是什么,脚本始终指向if语句而不是else语句

我如何检查某个节点是否存在,因为我试图这样做,如果没有,请回复到{I}尝试的else语句。

1 个答案:

答案 0 :(得分:0)

if($getfinalvaluefee->length == 0)
{
  message('no nodes')
}