2016-05-24 2 views
3

У меня есть запрос, выведенный в структуру. Затем у меня есть массив, в котором я прохожу. Я хочу сравнить значение с моей структурой и моим массивом. Сначала для сравнения значения массива 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 не существует. Я определенно делаю что-то не так, когда пытаюсь получить доступ к значению из моей структуры, а также structFindValue может не быть чем-то, что мне нужно для сравнения значения структуры и значения массива. Мне нужно что-то такое же, что и NEQ в coldfusion. Если кто-нибудь может помочь с этой проблемой, пожалуйста, дайте мне знать.

+0

Является ли это 'structFindValue (myStruct [myrow [1]], myrow [2])', что вы пытаетесь сделать? – RRK

+0

Я пытаюсь сравнить значение из моей структуры и значения из моего массива. –

+1

Попробуйте это ''. – RRK

ответ

3

Доступ к данным можно получить следующим образом.

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