使用json_encode将数组从PHP传递到JavaScript显示空值

时间:2012-07-03 22:03:49

标签: php javascript json

我正在使用以下代码将数组从PHP发送到JavaScript,但似乎无法使用json_encode()。这是我的代码:

在PHP中:

$arr = array();
while($row = mysql_fetch_assoc($result)) {
    $arr[] = $row; 
}

在JavaScript中:

var test = "<?php echo json_encode($arr); ?>";
alert (test);

var_dump()的结果:

array
  0 => 
    array
      'proj_nbr' => string '0111' (length=4)
      'proj_name' => string 'General' (length=7)
  1 => 
    array
      'proj_nbr' => string '' (length=0)
      'proj_name' => string 'New Project' (length=11)

它只显示空白值。我的PHP版本是5.3.6。

1 个答案:

答案 0 :(得分:2)

我想出来了..我的错误是javascript var test = "<?php echo json_encode($arr); ?>";

中的双引号

应该是     var test = <?php echo json_encode($arr); ?>;

还将mysql_fetch_assoc更改为mysql_fetch_row

但数据不是数组格式。我以这种格式获取数据(0111,General,)。我需要数组格式的数据。有什么建议吗?