如何将JavaScript变量与PHP生成的JSON绑定?
我这里有两个用于google map geolocation的js变量:如何将JavaScript变量与PHP生成的JSON绑定?,javascript,php,arrays,json,Javascript,Php,Arrays,Json,我这里有两个用于google map geolocation的js变量: <script> map = new google.maps.Map(document.getElementById('map'), { center: {lat: "<?php echo $lat; ?>", lng: "<?php echo $lng; ?>"}, zoom: "<?php
<script>
map = new google.maps.Map(document.getElementById('map'), {
center: {lat: "<?php echo $lat; ?>", lng: "<?php echo $lng; ?>"},
zoom: "<?php echo $zoom; ?>"
});
var image = {
url: "<?php echo $imgurl; ?>",
scaledSize: new google.maps.Size("<?php echo $mapwidth; ?>","<?php echo $mapheight; ?>")
};
</script>
map=new google.maps.map(document.getElementById('map'){
中心:{lat:,lng:},
缩放:“
});
变量图像={
url:“”,
scaledSize:new google.maps.Size(“,”)
};
我想用PHP/SQL数据库生成的对象设置一些标记和信息窗口
这是js的原始形式:
<script>
var marker_config = [
{
position: {lat: 34.775974, lng: 120.329628},
map: map,
title: 'Place A',
label: 'A',
icon: image
},{
position: {lat: 35.547591, lng: 115.467302},
map: map,
title:'Place B',
label: 'B',
icon: image
},{
position: {lat: 34.734375, lng: 117.408866},
map: map,
title:'Place C',
label: 'C',
icon: image
}
];
</script>
变量标记_配置=[
{
位置:{lat:34.775974,lng:120.329628},
地图:地图,
标题:“地点A”,
标签:“A”,
图标:图像
},{
位置:{lat:35.547591,lng:115.467302},
地图:地图,
标题:'Place B',
标签:‘B’,
图标:图像
},{
位置:{lat:34.734375,lng:117.408866},
地图:地图,
标题:'Place C',
标签:‘C’,
图标:图像
}
];
此对象需要上面的键映射和键图标中的js变量
我的PHP数组是这样编写的:
<?php
$markarr = [
array(
'position'=>array('lat'=>34.775974, 'lng'=>120.329628),
'map'=>'map',
'title'=>'Place A',
'label'=>'A',
'icon'=>'image'
),
array(
'position'=>array('lat'=>35.547591, 'lng'=>115.467302),
'map'=>'map',
'title'=>'Place B',
'label'=>'B',
'icon'=>'image'
),
array(
'position'=>array('lat'=>34.734375, 'lng'=>117.408866),
'map'=>'map',
'title'=>'Place C',
'label'=>'C',
'icon'=>'image'
)
];
?>
在js块中:
<script>
var marker_config = JSON.parse(<?php echo json_encode($markarr); ?>);
</script>
var marker_config=JSON.parse();
这就是行不通。我想可能是把变量作为字符串调用的问题。所以,我试着去掉“地图”和“图像”的引号。这也没用。有什么解决办法吗?
<script>
var marker_config = <?php echo json_encode($markarr); ?>;
</script>
var marker_config=;