Как добавить массив PHP в массив JS в Highcharts

Все, что я хочу, – это добавить этот простой массив PHP для отображения по оси X. Он не хочет показывать мой контент вообще, и я не понимаю, почему.

<!DOCTYPE HTML> <html> <head> <?php $array = array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"); ?> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Highcharts Example</title> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"type="text/javascript"></script> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> <script type="text/javascript"> $(function () { js_array = new Array(<?php echo json_encode($array) ?>); $('#container').highcharts({ title: { text: 'Monthly Average Temperature', x: -20 //center }, subtitle: { text: 'Source: WorldClimate.com', x: -20 }, xAxis: { categories: js_array } 

Нам кажется, что здесь слишком много проблем …

измените это:

  js_array = new Array(<?php echo json_encode($array) ?>); ... xAxis: { categories: js_array } 

к этому:

 xAxis: { categories: <?php echo json_encode($array); ?> } 

Попробуй это.

 var js_array = <?php echo json_encode($array); ?>; 

Объект JSON не совпадает с массивом js. Сначала вам нужно разобрать код. JSON.parse () или eval () могут помочь разобрать.

 js_array = JSON.parse('<?php echo json_encode($array) ?>'); 

как правильно ответил @ user1477388

Взгляните на статью http://docs.highcharts.com/#preprocessing-data-from-a-database, которая описывает hwo для использования массива.

он работал со мной так:

для категорий :

 categories: [<?php for($i = 0; $i < count($name); $i++){ echo "'".$name[$i]."'"; echo ",";} ?>], 

для данных :

 data: [<?php echo join($age, ',') ?>] 

Обратите внимание, что $ name – это строковый массив, а $ age – целочисленный массив . Также имейте в виду, что этот код работал со мной, когда я вложил запрос php, Sql на ту же страницу.