我有一個包含結構數組的對象,生成它的代碼在查詢上循環,從查詢的每一行獲取各種值,並在行完成時填充結構它追加到一個數組,並再次開始該過程:後來coldfusion在數組中找到一個結構
<cfscript>
variables.x = 1;
variables.aArray = [];
// loop over my query
while(variables.x lte variables.qQuery.recordcount){
variables.stStruct = {};
variables.stStruct.nID = variables.qQuery.id[variables.x];
variables.stStruct.sText = variables.qQuery.text[variables.x];
//etc...
arrayAppend(variables.aArray,variables.stStruct);
variables.x++;
}
variables.oObject.setArray(variables.aArray);
</cfscript>
在我的代碼我希望能夠拉出來的細節有關的項目數組中,只有全國免疫指導。我不知道那個nID的數組位置,這意味着使用一種試圖找到它的抽象方法。
我有一個想法,通過改變上面的代碼來創建位置結構。
<cfscript>
variables.x = 1;
variables.aArray = [];
variables.stTracker = {};
while...yadda
variables.stStruct = {};
yadda yadda
structInsert(variables.stTracker,"variables.qQuery.id[variables.x]","variables.x");
variables.x++;
while end
variables.oObject.setArray(variables.aArray);
variables.oObject.setTracker(variables.stTracker);
</cfscript>
這意味着我可以做點像variables.nPosition = structFindKey(variables.oObject.getTracker(),'88')[1].value;
。這仍然感覺非常不雅,我想知道是否我錯過了一些讓我比現在更容易的東西。
如果有解決方案使用java解決這個問題,我會很高興。
是否順序的項目將被添加到陣列的事? – AlexP
不,但目前他們進入很像我擁有它,但查詢的順序出來。 – Jarede