我以为我知道我在做什么从API调用中获取JSON结构并输出ColdFusion中的值,但我一直收到错误。我首先使用CFHTTP使用GET调用API。然后我获取返回的JSON值并反序列化它,如下所示。
<cfset myJsonStruct = deserializeJSON(#sch.filecontent#) />
<!--- <cfdump var="#myJsonStruct#"> --->
<cfdump var="#myJsonStruct.activities#">
当我转储反序列化值时,我得到下面屏幕中显示的结构。
我现在想循环遍历绿色阵列中的数据显示,但它在“2017-09-20”处窒息。我猜它不喜欢结构名称有数字或日期?
我做错了什么?
答案 0 :(得分:0)
使用:
<cfdump var="#myJsonStruct['2017-09-20']#">
但在分析转储后,您可能需要使用:
<cfdump var="#myJsonStruct.days['2017-09-20']#">
答案 1 :(得分:0)
使用嵌套结构时,请务必记住您不能跳过结构。您必须在每个结构中明确指出一个键,直到您要访问的键。为了在“赋值”键中访问数组,请指明路径中的每个键:days ['2017-09-20'] ['assignments']。
您应该能够转储数组。通过使用括号表示法,您可以引用非简单字母数字值的动态结构键名称和键名称。
要访问“shift”数组,请确保指明分配的数组索引:例如['2017-09-20'] ['赋值'] [1] ['shift']。