将数据数组从PHP发送到JavaScript

时间:2010-11-27 06:21:53

标签: php javascript html

我想将三个数据数组vertexavertexbedge_id发送到包含JavaScript的HTML页面,以便在顶点上运行算法Dijkstra。我应该使用JSON命令吗?

2 个答案:

答案 0 :(得分:4)

您需要对数据使用json_encode,例如

<?php
$arr=array('cow'=>'black','feet'=>4);
$encoded=json_encode($arr);

$ encoded现在是{"cow":"black","feet":4},JavaScript可以使用。要将其发送到页面,请执行

header('Content-Type: application/json');  
echo $encoded;

header必须在向页面输出任何内容之前发生,甚至是空格或空行,否则PHP会出错。

在将数据生成为PHP数组后,在初始页面加载时将其输出到JS,您可以将其打印出来,如下所示。在这种情况下,您不需要输出特殊标头;它是普通text / html文档的一部分。标题用于返回Ajax。

<?php
$json_data=json_encode($your_array);
?>
<script>
   var an_obj=<?php echo $json_data;?>;
</script> 

答案 1 :(得分:1)

使用datatype:"json" 表示数据,datatype:"script"设置ajax调用的数据类型。

在服务器端,分别将内容类型设置为application/jsonapplication/javascript