我有这个PHP从数据库中获取地址列的所有行,我使用json_encode()
函数将其转换为字符串并在javascript中JSON.parse
但是我没有按预期获得输出< / p>
<?
include('dbcon.php');
$result = mysql_query("SELECT address FROM markers");
while ($row = mysql_fetch_assoc($result)) {
$new_array[] = $row;
}
print_r($new_array);
$add_js = json_encode( $new_array );
print_r($add_js);
?>
print_r($new_array);
我得到两个维度,并在第0个位置获得null
。我所做的任何更改都会在第零个位置保持为null。
var address = [JSON.parse( '<?php echo $add_js ?>' )];
var address
应该存储地址数组,但是当我在数组中发出警报时它会提供输出。
[object Object],[object Object],[object Object],[object Object],[object Object]
我想在从数据库中获取地址后存储地址数组
答案 0 :(得分:2)
所以$new_array
是一个关联数组的数组,它在JavaScript中被解码为一个对象数组。如果你想要一个字符串数组,那么你需要在$new_array
:
$new_array = array();
while ($row = mysql_fetch_assoc($result)) {
$new_array[] = $row['address']; // <-- This line
}
print_r($new_array);
$add_js = json_encode( $new_array );
print_r($add_js);
答案 1 :(得分:1)
我认为这足以满足您的需求:
var address = <?php echo $add_js ?>