質問: json_decode($response); // HTMLとして表示 header('Content-Type: text/html; charset=UTF-8'); ?> Example rest as $r): ?> =h($r->name)?> ID =h($r->id)?> 店舗名 =h($r->name)?> アクセス =h($r->access->line)?>・=h($r->access->station)?>から=h($r->access->walk)?>分 ```
回答: ヒントというか答えに近いですが,PHPの配列の特性をわかっていないと答えにたどり着くまでに時間がかかりそうに思ったので,一応書いておきます. ``` $groups = []; foreach ($obj->rest as $rest) { $groups[$rest->code->areacode][] = $rest; } ``` `$groups`は,JSONで表現するとこんな形になることが期待されます. ``` { "AREA1111": [ {"id": 1, "name": "レストラン1", ...}, {"id": 2, "name": "レストラン2", ...} ], "AREA2222": [ {"id": 3, "name": "レストラン3", ...} ] } ``` 1次元目をエリアコードにし,2次元目を添え字指定せずに`[]`にするとそれに該当するものをどんどん追加していってくれます.もし大エリア,中エリア,小エリア,...というように更なる多次元配列で細分化したい場合にも,この方法は適用できます.**PHPの配列は次元ごとに初期化する必要が無いという特性を持っているからです.**これは他のほとんどの言語にはあてはまりません. さて,この`$groups`をどう使うかぐらいは自分で考えてください.これが書けないならプログラミング適性が皆無であると判断されてもしょうがないです...