Heim >Backend-Entwicklung >PHP-Tutorial >php将数据库查询结果转换为json格式

php将数据库查询结果转换为json格式

WBOY
WBOYOriginal
2016-06-23 13:46:111521Durchsuche

数据库查询结果如下:
要把它转化为如下格式的json,第一个属性是日期对应的unix时间戳,第二个是sales

 

<?phpinclude_once 'DB_connmssql.php';header("Content-Type:text/html;charset=utf-8");		$sql_initbest="		select outdate,SUM(nb*endprice) sales from BI_salewhere endprice<>0group by outdate";		$query = mssql_query($sql_initbest);				while($row=mssql_fetch_array($query)){					array_push($result["data"] , $row);		}							echo json_encode($result);		?>

不知道该怎么转日期格式,拼接的json格式也不对求大神指教下


回复讨论(解决方案)

sales 列的值怎么变小啦?

sales 列的值怎么变小啦?


不是变了...是不知道怎么拼接json
我现在是拼接字符串 但日期格式不和要求,
<?phpinclude_once 'DB_connmssql172.php';header("Content-Type:text/html;charset=utf-8");		$sql_initbest="		select outdate,SUM(nb*endprice) sales from BI_salewhere endprice<>0group by outdate";				$query = mssql_query($sql_initbest);		$items=array();		echo "{	'data':";		while($row=mssql_fetch_array($query)){		echo "[".strtotime($row["outdate"]).",".$row["sales"]."],\n";		}		echo "]}";	?>

while($row=mssql_fetch_array($query)){    $result["data"][] = array(  strtotime($row["outdate"]).'000', $row["sales"] );}echo json_encode($result);

拚成??呢?

$arr = array(	'data' => array(		array('1161043200000,74.29'),		array('1161043200001,74.53'),		array('1161043200002,78.99'),		array('1161043200003,79.95')	));echo json_encode($arr);

while($row=mssql_fetch_array($query)){    $result["data"][] = array(  strtotime($row["outdate"]).'000', $row["sales"] );}echo json_encode($result);


格式不对,里面的时间戳和sales要求是数字类型的

不可能的!贴出记得输出结果

按 json 格式规范,无论是键还是值都应用双引号括起(虽然允许数值类型不用引号)
所以你不能从字面上判断某个数字串的数据类型

如果你要数字,可以使用floatval转成数字。

while($row=mssql_fetch_array($query)){    $result["data"][] = array(  floatval(strtotime($row["outdate"]).'000'), floatval($row["sales"]) );}echo json_encode($result);

输出这个是什么?$result["data"]

感谢大家!

		while($row=mssql_fetch_array($query)){			$result["data"][] = array(  strtotime($row["outdate"]).'000', ceil($row['sales']) );		}		echo json_encode($result);

结果为:


highcharts使用是要把json中的双引号去掉。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn