Sql server 从sql查询输出的Json无法提供预期的输出

Sql server 从sql查询输出的Json无法提供预期的输出,sql-server,json,highcharts,Sql Server,Json,Highcharts,data.php文件: $sql = "SELECT [name],[Prev Year],[PY_mkr_col],[PY_sg_col] FROM dbo.s5_test"; $result = sqlsrv_query($con, $sql);; $category = array(); $category['name'] = 'month'; $series1 = array(); $series1['name'] = 'Prev Year'; $series1['color'

data.php文件:

$sql = "SELECT [name],[Prev Year],[PY_mkr_col],[PY_sg_col] FROM 
dbo.s5_test";

$result = sqlsrv_query($con, $sql);;

$category = array(); $category['name'] = 'month'; 
$series1 = array(); 
$series1['name'] = 'Prev Year';
$series1['color'] = 'PY_mkr_col';
$series1['segmentColor'] = 'PY_sg_col';

while($r = sqlsrv_fetch_array($result)) 
{ 
    $category['data'][] = $r['name']; 
    $series1['data'][] = $r['Prev Year']; 
} 

$result = array(); 
array_push($result,$category); 
array_push($result,$series1);
print json_encode($result, JSON_NUMERIC_CHECK); 
sqlsrv_close($con);
?>
输出Json:

[{"name":"month","data":
["Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","Jan","Feb","Mar"]},
{"name":"Prev Year","color":"PY_mkr_col","segmentColor":"PY_sg_col","data":
[140,154,138,173,144,148,168,130,143,137,171,125]}]
预期产出:

PY_mkr_col和PY_sg_col应包含以下值

PY_mkr_col:

   ['rba(128,128,128,0)', green, 
    'blue','rba(128,128,128,0)', green, 'blue','rba(128,128,128,0)', green, 
    'blue','rba(128,128,128,0)', green, 'blue']
PY_sg_col:

 [#FF0000, #008000,#FF0000, #008000,#FF0000,  
      #008000,#FF0000, #008000,#FF0000, #008000,#FF0000, #008000]<br>
[#FF0000,#008000,#FF0000,#008000,#FF0000,
#008000,#FF0000,#008000,#FF0000,#008000,#FF0000,#008000]
在SQL表中,值“rba(1280,0)”、“green”和“FF0000”的格式为nvarchar(40)


此Json输出将作为系列[]通过
Multi_color.js
库在highcharts中传递。

您好,欢迎来到Stack Overflow,请阅读如何创建并进行检查,以增加获得反馈和有用答案的机会。您能在JSFIDLE中创建一个工作示例吗?@stpoa:请查找小提琴“”您的图表似乎呈现良好,您能更具体地描述所需的输出吗?在我之前的小提琴中,我试图保持数据静态并生成图表。现在我正在尝试使用mssql中的数据生成相同的图表,并将其转换为JSON,然后使用mssql表中的所有数据、颜色和段颜色,但我失败了,请查看我的代码:如果我可以提供任何进一步的信息,请告诉我。