2009-11-18 4 views
0

J'utilise cette solution trouvée sur stackoverflow pour encoder ma sortie MYSQL vers un tableau codé JSON.Ajout d'éléments à un tableau codé JSON

$sth = mysql_query("SELECT ..."); 

$rows = array(); 

    while($r = mysql_fetch_assoc($sth)) { 
     $rows[] = $r; 
    } 

print json_encode($rows); 

Cela fonctionne très bien et produit une sortie de

[{"id":"81","title":"Something Here","start":"2009-10-27 09:00:00"},{"id":"77","title":"Report on water","start":"2009-10-30 09:00:00"}] 

Maintenant, je dois mettre une valeur de dire

"colour":"Blue" 

dans le tableau codé JSON.

donc j'ai besoin le ouput pour ressembler

[{"id":"81","title":"Community Awareness","start":"2009-10-27 09:00:00", "colour":"Blue"},{"id":"77","title":"Write a 10,000 Page Report on Emma","start":"2009-10-30 09:00:00", "colour":"Blue"}] 

Quelqu'un at-il des solutions sur la façon dont je pourrais y parvenir?

Merci,

Tim Mohr

Répondre

5

Avant d'appeler json_encode (lignes $), il suffit d'éditer la valeur dans le tableau $ rows:

$rows[0]['colour'] = 'Blue'; // changes the colour of the first row in the array 

modifier en fait, si vous Je veux juste ajouter une couleur à toutes les lignes, vous pouvez faire une simple foreach:

foreach ($rows as &$row) { 
    $row['colour'] = 'Blue'; 
} 
+0

Merci! c'était ça – Tim

Questions connexes