2012-01-09 2 views
-1
$result = mysql_query($query); 
$leaderboard = array(); 

while($row = mysql_fetch_assoc($result)) { 
    $leaderboard[$row["username"]] = $row["score"]; 
} 

$output = array 
(
    'status' => 1, 
    'content' =>$leaderboard 
); 

print_r(json_encode($output)); 

прямо сейчас $output массив такой JSON:Ouput данные в формате JSON на массив в PHP

{"tim":"120","john":"45","larry":"56"} 

, но я хочу, чтобы иметь их в качестве пары ключ-значение, так вместо этого я хочу быть похожим на:

{"name":"tim","score":120","name":"john","score="45", etc.} 

и если мне нужно именно так, как я изменить $leaderboard массив таким образом, результат будет, как это?

+0

Ну, вы действительно не можете использовать повторяющиеся ключи ... Я предполагаю, что вы хотите, чтобы JSON закодировал массив ассоциативных массивов? (Таким образом, создание массива объектов ...) – Brad

ответ

5
$leaderboard[] = Array('name' => $row["username"], 'score' => $row["score"]); 
Смежные вопросы