我正在使用代码点火器。以下是我在obj数组中查询结果的php代码,然后我如何将它们传递给js。我想在谷歌地图中使用它
<?php
foreach ($query->result() as $row)
{
$lat = $row->geo_lat;
$lng = $row->geo_lng;
$pic = $row->picture;
echo $lat;
echo $lng;
echo "<img src='"" . base_url() . $pic . "'"/><br />";
//echo json_encode($row);
//echo "<pre>";
//echo print_r($row);
}
?>
Js代码
var locations = ?????????;
var marker, i;
for (i = 0; i < locations.length; i++) {
marker = new google.maps.Marker({
position: new google.maps.LatLng(locations[i][0], locations[i][1]),
map: map,
draggable: true
});
}
无论是否使用ajax,都可以使用它。
您可以简单地使用json_encode()以json格式获得整体result
,并将其添加到js变量中,如:
<script>
var js_obj=<?php echo json_encode($result); ?>
/* now you can access this json object that is in js_obj variable and acccess any thing you want using dot operator.*/
</script>
你的问题不太清楚,所以如果你在问一些不同的问题,请说清楚,这样我就可以专注于实际问题。
您可以用PHP发出Javascript。。。为什么不对所有结果进行JSON编码,并将其存储在locations
变量中,如下所示:
<?php
echo( "<script>" );
echo( " var locations = " + json_encode($query->result()) + ";" );
echo( "</script>" );
?>
您需要使用AJAX来获得JS代码以请求PHP页面。PHP页面将处理请求,并以JSON格式返回适当的数据(在结果对象上使用json_encode()
)。