2016-03-26 11 views
0

Im phpとImで配列を構築するのに少し問題がある、私は複数のキー($ array)と値の配列を減らしたいので、それらのキーの2つだけで配列($ namesArray)を得ることができますそれぞれの値で:このアレイを構築するには?

for ($i = 0; $i < count($array); $i++){ 

     $namesArray[] = array(

      array("id" => $array[$i]["id"]), 
      array("value"=>$array[$i]["value"]), 
      array("value2"=>$array[$i]["value2"]), 
      array("value3"=>$array[$i]["value3"]) 

     ); 
     /* 
     $namesArray[] = array(

      ("id" => $array[$i]["id"]), 
      ("value"=>$array[$i]["value"]), 
      ("value2"=>$array[$i]["value2"]), 
      ("value3"=>$array[$i]["value3"]) 

      ); 
*/ 
    } 
echo json_encode($namesArray); 

私はこのような構造でJSONを取得する:

[ 
    [{ 
     "id": "3" 
    }, { 
     "value": "Test" 
    }], 
    [{ 
     "id": "4" 
    }, { 
     "value": "Test" 
    }] 
] 

は期待:

[ 
    { 
     "id": "3", 
     "value": "Test", 
     "value2":"value2" 
    },{ 
     "id": "4", 
     "value": "Test", 
     "value2":"value2" 
    } 
] 

を、私はコメント行を試してみました私はそのコードがどのように期待されているのか、それは結果ではありません。誰かが私の間違いを見るのを助けることができれば幸いです。ありがとう!!!

答えて

1

これを試してみてください:

for ($i = 0; $i < count($array); $i++){ 

    $namesArray[] = array(
     "id"  => $array[$i]["id"], 
     "value" => $array[$i]["value"], 
     "value2" => $array[$i]["value2"], 
     "value3" => $array[$i]["value3"] 
    ); 

} 

は、この情報がお役に立てば幸いです。

+0

:ありがとうございます!かっこなしで完璧に動作! –

関連する問題