Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.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
Arrays Coldfusion-如何循环遍历结构数组并动态打印所有键值?_Arrays_Coldfusion_Structure_Coldfusion 8 - Fatal编程技术网

Arrays Coldfusion-如何循环遍历结构数组并动态打印所有键值?

Arrays Coldfusion-如何循环遍历结构数组并动态打印所有键值?,arrays,coldfusion,structure,coldfusion-8,Arrays,Coldfusion,Structure,Coldfusion 8,给出以下结构数组: 我可以通过执行以下操作打印所有字段中的所有值: <cfset ColumnNames = structKeyArray(ApiData[1])> <cfset ColumnLength = ArrayLen(ColumnNames)> <cfloop from="1" to="#ArrayLen(ApiData)#" index="i">

给出以下结构数组:

我可以通过执行以下操作打印所有字段中的所有值:

    <cfset ColumnNames  = structKeyArray(ApiData[1])>                       
    <cfset ColumnLength = ArrayLen(ColumnNames)>    

    <cfloop from="1" to="#ArrayLen(ApiData)#" index="i">            
       <cfdump var="#ApiData[i].Created#">              
       <cfdump var="#ApiData[i].Name#">
               ...and so on

等等
现在我尝试循环所有字段,这样我就不必实际编写 每个字段的名称。如何动态地执行此操作? 比如:

    <cfloop from="1" to="#ArrayLen(ApiData)#" index="i">    
      <cfloop from="1" to="#ColumnLength#" index="i">
              <!---<cfdump var="#ApiData[i]." + "#ColumnNames[i]#" + "#">--->
              <!---<cfdump var="#ApiData[i].ColumnNames[i]#">--->
      </cfloop>
    </cfloop>

我不是一个ColdFusion的家伙,只是帮助一个朋友,ColdFusion语法与.Net非常不同:-)

谢谢你的帮助

<cfloop from="1" to="#arrayLen(ApiData)#" index="i">
  <cfset data = ApiData[i]>
  <cfloop collection="#data#" item="key">
    #key#:#data[key]#
  </cfloop> 
</cfloop>

使用此链接:

@Max-由于您没有提到CF版本,请注意,对于带有阵列的in循环,需要使用CF9.0.1+。这不起作用。您的解决方案似乎适用于单个结构。记住,我必须循环遍历一系列结构。我尝试通过执行以下操作来访问数组的第一个结构:#key#:#ApiData[key]#顺便说一句,我使用的是CF 8--thanksI改为:,它确实起了作用。现在我所需要的就是让它充满活力-谢谢@麦克斯,对不起,我不知道你还在CF8。我已经更新了CFML的答案,它应该对你有用。我对这个问题的投票应该让你的声誉达到3位数。你欠我一杯啤酒。
for (d in ApiData)  // for-in loop for array
{
  for (key in d)  // for-in loop for struct
  {
     writeOutput(key & ":" & d[key]);
  }
}