質問編集履歴

3

「ご返信いただいたコードの場合」を加筆

2019/06/03 02:57

投稿

hana_hana
hana_hana

スコア27

test CHANGED
File without changes
test CHANGED
@@ -395,3 +395,13 @@
395
395
  ]
396
396
 
397
397
  ```
398
+
399
+ ###ご返信いただいたコードの場合
400
+
401
+ CHERRY様にご返信いただいたコードを試したところ、下記画像の左側(←)になる状態です。目的である「該当のソースコード」の結果は右側(→)です。
402
+
403
+
404
+
405
+
406
+
407
+ ![イメージ説明](6329e59a52e768131cbe57d7bc6b4c31.png)

2

実際のJSONを補足

2019/06/03 02:57

投稿

hana_hana
hana_hana

スコア27

test CHANGED
File without changes
test CHANGED
@@ -72,6 +72,8 @@
72
72
 
73
73
 
74
74
 
75
+ ※追記:one、twoは実際には変数で、oneには投稿タイプ、twoには日付が入ります。その結果は「実際のJSON」として後述させて頂きました。
76
+
75
77
  ###ためしたこと
76
78
 
77
79
  まず別のテンプレート(post.php)にこのように移しました。

1

補足

2019/06/03 00:58

投稿

hana_hana
hana_hana

スコア27

test CHANGED
File without changes
test CHANGED
@@ -145,3 +145,251 @@
145
145
  ご協力いただけましたら幸いです。
146
146
 
147
147
  宜しくお願い致します。
148
+
149
+
150
+
151
+ ###実際のJSON
152
+
153
+ 配列がどのようにズレのるかについて補足させて頂きます。
154
+
155
+
156
+
157
+ 「該当のソースコード」では次のJSONになります。これが目的の形です。
158
+
159
+ ```JSON
160
+
161
+ {
162
+
163
+ "product": {
164
+
165
+ "2019/06": [
166
+
167
+ {
168
+
169
+ "id": 1,
170
+
171
+ },
172
+
173
+ {
174
+
175
+ "id": 2,
176
+
177
+ },
178
+
179
+ ],
180
+
181
+ "2019/05": [
182
+
183
+ {
184
+
185
+ "id": 3,
186
+
187
+ },
188
+
189
+ {
190
+
191
+ "id": 4,
192
+
193
+ }
194
+
195
+ ],
196
+
197
+ },
198
+
199
+ "service": {
200
+
201
+ "2019/05": [
202
+
203
+ {
204
+
205
+ "id": 5,
206
+
207
+ },
208
+
209
+ ]
210
+
211
+ }
212
+
213
+ }
214
+
215
+ ```
216
+
217
+ 一方「ためしたこと」では次のJSONになります。ループで作られた配列を使って再帰的に追加してしまうようで、上のものが次のようになります。
218
+
219
+ ```JSON
220
+
221
+ [
222
+
223
+ {
224
+
225
+ "product": {
226
+
227
+ "2019/06": [
228
+
229
+ {
230
+
231
+ "id": 1,
232
+
233
+ }
234
+
235
+ ]
236
+
237
+ }
238
+
239
+ },
240
+
241
+ {
242
+
243
+ "product": {
244
+
245
+ "2019/06": [
246
+
247
+ {
248
+
249
+ "id": 1,
250
+
251
+ },
252
+
253
+ {
254
+
255
+ "id": 2,
256
+
257
+ }
258
+
259
+ ]
260
+
261
+ }
262
+
263
+ }
264
+
265
+ {
266
+
267
+ "product": {
268
+
269
+ "2019/06": [
270
+
271
+ {
272
+
273
+ "id": 1,
274
+
275
+ },
276
+
277
+ {
278
+
279
+ "id": 2,
280
+
281
+ },
282
+
283
+ ],
284
+
285
+ "2019/05": [
286
+
287
+ {
288
+
289
+ "id": 3,
290
+
291
+ }
292
+
293
+ ]
294
+
295
+ }
296
+
297
+ },
298
+
299
+ {
300
+
301
+ "product": {
302
+
303
+ "2019/06": [
304
+
305
+ {
306
+
307
+ "id": 1,
308
+
309
+ },
310
+
311
+ {
312
+
313
+ "id": 2,
314
+
315
+ },
316
+
317
+ ],
318
+
319
+ "2019/05": [
320
+
321
+ {
322
+
323
+ "id": 3,
324
+
325
+ },
326
+
327
+ {
328
+
329
+ "id": 4,
330
+
331
+ }
332
+
333
+ ]
334
+
335
+ }
336
+
337
+ },
338
+
339
+ {
340
+
341
+ "product": {
342
+
343
+ "2019/06": [
344
+
345
+ {
346
+
347
+ "id": 1,
348
+
349
+ },
350
+
351
+ {
352
+
353
+ "id": 2,
354
+
355
+ },
356
+
357
+ ],
358
+
359
+ "2019/05": [
360
+
361
+ {
362
+
363
+ "id": 3,
364
+
365
+ },
366
+
367
+ {
368
+
369
+ "id": 4,
370
+
371
+ }
372
+
373
+ ],
374
+
375
+ },
376
+
377
+ "service": {
378
+
379
+ "2019/05": [
380
+
381
+ {
382
+
383
+ "id": 5,
384
+
385
+ }
386
+
387
+ ]
388
+
389
+ }
390
+
391
+ }
392
+
393
+ ]
394
+
395
+ ```