2016-03-26 34 views
0

在php和Im中我很新,在構建數組時有一點麻煩,我想減少多個鍵($ array)和值的數組,因此我只能使用幾個鍵獲取一個數組($ 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

:O非常感謝你!沒有括號完美工作! –