2017-03-21 11 views
-4

私は複雑なJSONを持っており、このJSONから配列を作成する必要があります。 私はすでにJSONを解析され、このようなvariabliesを作成:JSONからPHP配列を作成できません

$array = [array_1(name,osm_id,place,population),array_2(name_2,osm_id_2)] 

は、あなたが私を助けることができます:これはvariabliesで$iはこのように、変更された場合

$name = $json[response][docs][$i][name][0]; 
    $osm_id = $json[response][docs][$i][osm_id][0]; 
    $place = $json[response][docs][$i][place][0]; 
    $population= $json[response][docs][$i][population][0]; 

は、今私は、配列を必要としますこの配列を埋めるサイクル?

+0

のようなものになるだろう、

$expected_arr = array(); foreach($json[response][docs] as $inc => $values){ $data = array(); foreach($values as $key => $val){ $data[$key] = $val[0]; } $expected_arr[$inc] = $data; } 

正しければ...'ニーズ'$ json ['response'] ... ' – Augwa

+1

[mcve]を入力してください。私は問題が何であるか分かりません。 – Rizier123

答えて

1

私の理解では、あなたは、あなたが最初にすべての `$のJSON [応答]の各配列要素を引用する必要が

array(0 => array('name'=>'xxx', 'osm_id'=>'yy',..), 1=> array('name'=>'',.. ,),...) 
+0

はい、あなたはそれを理解しましたが、私はそれを使用する方法を知らない... –

+0

この配列をしたい場所にこのコードを貼り付けて試してみてください。もし私が間違っていたら、あなたは何をしたいのですか? – siddiq

+0

私はそのコードを使用しました。次にprint_r($ expected_arr); Array([name] => Array([0] => B)[osm_id] => Array([0 ....名前は名前全体ではなく、文字Bであり、osm_idは空の –

関連する問題