如何比较结构和数组中的值?

时间:2016-05-24 18:17:04

标签: arrays struct coldfusion

我在结构中输出了我的查询。然后我有我的数组循环。我想比较我的结构和我的数组的值。首先比较数组值1和我的结构的键,如果它们是相同的我有另一个if语句,我想比较数组值23和我的结构值代码,如果它们不相同我在列表中存储数组值1 。这是我到目前为止的代码:

<!--- loop that populates myStruct --->
<cfloop query="getCustomers">
    <cfset myStruct[Cutomer_Number] = {id1=ID,code=CS_CODE}>
</cfloop>

<cfloop index="i" from="1" to="#(cnt)#" step="1">   
    <cfif len(trim(myarray[i])) GT 0>
        <cfset myrow = #replace(myarray[i],chr(10),'')#>
        <cfset myrow = ListToArray(myrow,",",true)>

        <!--- this if statement works where I compare my key and row 1 from    array --->
        <cfif structKeyExists(myStruct,myrow[1])>
<!--- here I want to check if CS_CODE and row 2 are different--->
            <cfif structFindValue(myStruct.CS_CODE,myrow[2])>
                <cfoutput>#count# - #myrow[1]# - #myrow[2]#</cfoutput><br>
            </cfif>
        </cfif>
        <cfset count++>
    </cfif>
</cfloop>

我收到CS_CODE变量不存在的错误。当我尝试从我的struct中访问value时,我肯定做错了什么,而且structFindValue可能不是我需要比较struct value和array value的东西。在coldfusion中我需要与NEQ相同的东西。如果有人可以帮助解决这个问题,请告诉我。

1 个答案:

答案 0 :(得分:3)

您可以像这样访问数据。

<cfif structFindValue(myStruct[myrow[1]].code, myrow[2])>