我一直想弄清楚爲什麼我的數組不會輸出。無法輸出簡單數組?
我在數組上做了一個var轉儲,它轉儲它就好了,但是當我嘗試輸出它時,它會返回致命錯誤。另外,我想,也許我必須可能遍歷數組才能訪問它,所以我也嘗試了這一點,並設法通過執行var轉儲來遍歷數組,但是當我輸出它時,它會打破頁面。
這是我試過的代碼,我嘗試了近3個小時,嘗試了各種各樣的東西。
的ColdFusion:
<cfset defaultDirectory = "C:\uploads\" />
<cfdirectory
directory="#defaultDirectory#"
action="list"
name="myList"
>
<!---Get Array of Directory Names --->
<cfquery dbtype="query" name="fileNames">
SELECT NAME
FROM myList
</cfquery>
<!---Create array --->
<cfset myArray=arraynew(1)>
<!---Populate array with directory query data "name" --->
<cfloop query="fileNames">
<cfset myArray[CurrentRow][1]=#defaultDirectory# & NAME & "\">
</cfloop
到現在爲止,一切似乎進展良好。我拋出數組變量,它輸出我想要的。所以我嘗試了這一點,它返回了一個致命的錯誤。
<cfoutput>
<cfif directoryExists("#myArray[1]#")>
it exists.
<cfelse>
Doesn't exists.
</cfif>
<cfoutput>
然後我想到的可能是我必須遍歷數組才能訪問它?
所以我試過這個。
<cfloop index="i" from="1" to="#arrayLen(myArray)#">
<cfdump var="#myArray[i]#"
</cfloop>
這個設法從陣列中傾倒了所有的事情,但是當我嘗試輸出它,它會返回一個致命的錯誤,我不知道爲什麼。我查了關於如何轉儲數組的教程,我不確定我在做什麼錯了?任何建議,將不勝感激。
這裏是被請求myArray的結構的截圖:
我做
<cfvar dump="#myArray#">
請添加轉儲陣列的屏幕截圖,以便我們可以檢查結構。 –
這是你想要的嗎?那就是被轉儲的myArray變量的結構。 – Curious13
是的。所以你有一個結構數組。我會發佈一個答案,因爲它會給我更多的空間來描述這個。 –