Php 谷歌地图库代码点火器问题
我一直在使用谷歌地图和codeigniter做一些项目 我试过谷歌地图库中的codeigniter 我正在尝试从数据库中存储的纬度和经度绘制多段线 当使用标记时,它做得很好,但当我使用多段线时,图形无法控制,有人能给我一些指针吗 这是我一直在使用的代码 控制器:Php 谷歌地图库代码点火器问题,php,codeigniter,google-maps,Php,Codeigniter,Google Maps,我一直在使用谷歌地图和codeigniter做一些项目 我试过谷歌地图库中的codeigniter 我正在尝试从数据库中存储的纬度和经度绘制多段线 当使用标记时,它做得很好,但当我使用多段线时,图形无法控制,有人能给我一些指针吗 这是我一直在使用的代码 控制器: 如果(!defined('BASEPATH'))退出('No direct script access allowed'); 类映射扩展CI_控制器{ 函数_u构造() { 父项::_构造(); } 函数索引() { //加载库 $t
如果(!defined('BASEPATH'))退出('No direct script access allowed');
类映射扩展CI_控制器{
函数_u构造()
{
父项::_构造();
}
函数索引()
{
//加载库
$this->load->library('googlemaps');
//加载我们的模型
$this->load->model('map\u model','',TRUE);
//通过任何参数初始化映射
$config['center']='7112';
$config['zoom']=“自动”;
$this->googlemaps->initialize($config);
//使用我们的模型从数据库中获取坐标
$coords=$this->map_model->get_坐标();
$x=0;
//循环使用我们在上面获得的坐标,并将它们添加到地图中
foreach($coords作为$coordinate)
{
$x++;
如果($x%2==1)
{
$elat=$coordinate->lat;
$elong=$coordinate->long;
/*打印$elat;
打印$elong*/
打印“
”;
}
如果($x%2==0)
{
$lat=$coordinate->lat;
$long=$coordinate->long;
/*打印$lat;
打印$long*/
打印“
”;
}
如果($x>1&&$x谷歌地图->添加多段线($polyline);
打印$x;
打印“
”;
打印“(”;
打印$elat;
打印$elong;
打印“
”;
打印$lat;
打印$long;
印刷品“)”;
}
如果($x%2==1)
{
$polyline=array();
$polyline['points']=数组('$lat,$long','$elat,$elong');
$this->googlemaps->add_polyline($polyline);
打印$x;
打印“
”;
打印“(”;
打印$elat;
打印$elong;
打印“
”;
打印$lat;
打印$long;
印刷品“)”;
}
}
$marker=array();
$marker['position']=$coordinate->lat.,'.$coordinate->long;
$this->googlemaps->add_marker($marker);
}
/*foreach($coords作为$coordinate)
{
$marker=array();
$marker['position']=$coordinate->lat.,'.$coordinate->long;
$this->googlemaps->add_marker($marker);
$polyline=array();
$polyline['points']=数组($coordinate->lat,$coordinate->long.,);
$this->googlemaps->add_polyline($polyline);
}*/
//创建地图
$data=array();
$data['map']=$this->googlemaps->create_map();
//通过地图数据加载我们的视图
$this->load->view('map\u view',$data);
}
}
我注意到了这一点。您的$elat、$elong、$lat、$long都在for each循环中声明。请尝试在循环之前以默认值0声明它们,就像您的$x一样。谢谢,所以请注意,但是运气不好,兄弟,还是一样