使用ColdFusion循环遍历数组

Jas*_*ton 6 arrays coldfusion cfloop

我有一个购物车阵列,它有一个变量告诉我产品是否是附件,这将是是或否.我需要遍历购物车并找出以下内容:

  • 如果购物车仅包含配件; 做任何事.
  • 如果购物车只是产品; 做任何事.
  • 如果推车有产品和配件; 做任何事.

我一直在尝试这个:

<cfloop index="i" from="1" to="#arrayLen(session.mycart)#">
  <cfif session.mycart[i].accs EQ "yes">
    <cfset accPresent = "yes">
  </cfif>
  <cfif session.mycart[i].accs EQ "no">
    <cfset prodpresent = "yes">
  </cfif>
</cfloop>

<cfif accPresent EQ "yes" and prodPresent EQ "no">
  <cfset  bothPresent EQ "yes">
</cfif>
Run Code Online (Sandbox Code Playgroud)

由于没有找到accPresent,这种情况就会失败,我认为这是因为循环经历一个循环,并且一旦找到非附属产品,accs就不等于是.实现我想要做的事情的最佳方法是什么?

Dal*_*ser 6

做这个

<cfset accPresent = "no" />
<cfset prodPresent = "no" />
<cfloop index="i" from="1" to="#arrayLen(session.mycart)#">
    <cfif session.mycart[i].accs EQ "yes">
        <cfset accPresent = "yes">
    </cfif>
    <cfif session.mycart[i].accs EQ "no">
        <cfset prodpresent = "yes">
    </cfif>
</cfloop>

<cfif accPresent EQ "yes" and prodPresent EQ "no">
    <cfset  bothPresent EQ "yes">
</cfif>
Run Code Online (Sandbox Code Playgroud)