Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
检查XML是否存在特定密钥_Xml_Coldfusion - Fatal编程技术网

检查XML是否存在特定密钥

检查XML是否存在特定密钥,xml,coldfusion,Xml,Coldfusion,在下面的XML中,我想看看是否有名为“errors”的元素 交易失败。 信用卡号无效。 为了查看是否存在节点“错误”,我使用了: <cfif structKeyExists(sXML, "errors")> 但是它返回false(如果事务成功,则XML没有节点“错误”)。我做错了什么,或者有更好的方法吗?如果使用转储xml结构,则表明“errors”是一个子节点,分为以下几级: 可以通过父结构引用它。假设xml始终包含父节点“createTransactionRespon

在下面的XML中,我想看看是否有名为“errors”的元素


交易失败。
信用卡号无效。
为了查看是否存在节点“错误”,我使用了:

<cfif structKeyExists(sXML, "errors")>


但是它返回
false
(如果事务成功,则XML没有节点“错误”)。我做错了什么,或者有更好的方法吗?

如果使用
转储xml结构,则表明“errors”是一个子节点,分为以下几级:

可以通过父结构引用它。假设xml始终包含父节点“createTransactionResponse”和“transactionResponse”,请使用:


建立
找不到

就是这样。实际的XML有一英里长。我不能使用xPath吗?当然可以使用并测试返回数组的长度。如果为0,则表示未找到节点/键。例如
resultArray=xmlSearch(sXML,“.//错误”)
。虽然这只是一个例子。由于“错误”非常常见,因此可能需要使用更精确的搜索字符串。
<cfif structKeyExists(sXML, "errors")>
<cfif structKeyExists(sXML.createTransactionResponse.transactionResponse, "errors")>
    Found
<cfelse>
    Not Found
</cfif>