5

我如何解析这个结构?我需要把它变成单个变量。例如来自属性结构:

name

type

value

我不熟悉结构,我需要将这种类型的数据输入数据库。

我玩过cfloop,但没有。

cfdump

4

3 回答 3

6

假设您的变量名称是“foo”,您可以像这样访问名称

foo.attributes.name

结构可以通过点符号简单地访问。

于 2010-08-29T21:47:41.940 回答
1

如果您想简单地转储此结构,请使用简单的 XML 并将其存储在 CLOB 或 BLOB 字段中。但是如果你想执行搜索、频繁更改数据等操作,那么最好考虑树结构。

如果您使用的是 Oracle,请查看CONNECT BY PRIOR,这使您可以将值直接作为行存储在数据库中,然后查询它们并加载到树结构中。

这里的要点是您应该能够存储和检索数据,就好像您正在处理一个简单的 TREE 数据结构一样。

于 2010-08-29T19:52:38.560 回答
0

与 Ben 所说的一样,我不确定您为什么要拆开这个漂亮的小结构。通过访问其中的值而不是反汇编它,以当前形式使用它。

<cfloop collection="#foo.attributes#" item="myKey">
    <cfoutput>Value of #myKey# is #structFind(foo.attributes, myKey)#</cfoutput>
</cfloop>

有关详细信息,请参阅LiveDocs 的结构循环页面

于 2010-09-07T19:07:01.207 回答