2013-01-19 3 views
1

J'ai une page php qui utilise des chartes hautes. Je n'arrive pas à remplir le xaxis en utilisant un tableau.Highchart Array Xaxis

J'ai un tableau de php qui a été faite en utilisant:

$x = array(); 
while ($data = mysql_fetch_assoc($results)){ 
    $x[]= $data['sold_date']; 
} 

quand je print_r je reçois

Array ([0] => 2009-01-20 [1] => 2009 -04-17 [2] => 2009-09-15 [3] => 2009-10-16 [4] => 2010-01-04 [5] => 2010-04-01 [6] => 2010-07-23 [7] => 2010-10-20 [8] => 2011-01-07 [9] => 2011-05-27 [10] => 2011-07-01 [11] = > 2011-10-14 [12] => 2012-01-27 [13] => 2012-04-25 [14] => 2012-07-24 [15] => 2012-11-07 [16] => 2013-01-18)

Maintenant, dans les graphiques, je veux que le tableau ci-dessus soit les valeurs de l'axe x. Je ne sais pas ce que je fais de mal. J'ai essayé:

xAxis: { 
    categories: ["<?php echo $x;?>"] 
}, 

mais il retourne: le tableau mot 1 2 4 5 6 7 ... au lieu de la liste des dates du tableau. S'il vous plaît aider.

Répondre

0
<?php 
$i = 0; 
$num = count($x); 
?> 


xAxis: { 
    categories: [<?php foreach($x as $key) { 
         if(++$i === $num) { // this will remove the comma if last in array. 
          $comma = ''; 
         } 
         else { 
          $comma = ','; 
         } 
         echo "'" . $key . "'" . $comma . ""; } ?>] 
}, 

Ceci n'a pas été testé.

1

Utilisez la fonction join() vers tableau

categories: ['<?php echo join($categories, "', '") ?>'] 

Exemple tableau catégories:

<?php 
    $categories[] = 'Jan'; 
    $categories[] = 'Feb'; 
    $categories[] = 'Mar'; 
    $categories[] = 'Apr'; 
?>