讀古今文學網 > 微信公眾平台開發:從零基礎到ThinkPHP5高性能框架實踐 > 24.3.2 開發實現 >

24.3.2 開發實現

根據上述接口,可以實現當微信公眾號接收到用戶的地理位置消息時,返回公交及自駕線路給用戶。其相關代碼如下。


 1 private function receiveLocation($object)
 2 {
 3     $Pondbay = array("name" => "方倍工作室", "latitude" => "22.539394", "longitude" => 
       "113.956246");
 4     
 5     $content = array("Title" =>"高德地圖為您導航", 
 6                       "Description" =>"", 
 7                       "PicUrl" =>"", 
 8                       "Url" =>"");
 9     $content = array("Title" =>"點擊圖片查看公交線路導航", 
10                       "Description" =>"", 
11                       "PicUrl" =>"http:// h.hiphotos.bdimg.com/wisegame/pic/item/
                         1fd98d1001e9390186c2c97479ec54e737d196bc.jpg", 
12                       "Url" =>"http:// mo.amap.com/?from=".$object->Location_X.",
                         ".$object->Location_Y."(".$object->Label.")&to=".$Pondbay
                         ['latitude'].",".$Pondbay['longitude']."(".$Pondbay['name'].")
                         &type=1&opt=0&dev=1");
13     $content = array("Title" =>"點擊圖片查看駕車線路導航", 
14                       "Description" =>"", 
15                       "PicUrl" =>"http:// b.hiphotos.bdimg.com/wisegame/pic/
                         item/eeb1cb1349540923f48a42079058d109b2de49e3.jpg", 
16                       "Url" =>"http:// mo.amap.com/?from=".$object->Location_
                         X.",".$object->Location_Y."(".$object->Label.")&to=".$Pondbay
                         ['latitude'].",".$Pondbay['longitude']."(".$Pondbay['name'].")
                         &type=0&opt=1&dev=1");
17     $result = $this->transmitNews($object, $content);
18     return $result;
19 }
  

上述代碼運行時,將返回一個多圖文消息,分別顯示標題、公交導航、駕車導航的消息。公交和駕車的圖文消息的鏈接為高德地圖的接口URL,接口中起始地址為用戶發送的地理位置,目的地址為已定義的坐標地址。該程序運行後,界面如圖24-7所示。

點擊公交線路和駕車線路導航後,高德地圖生成的線路規劃如圖24-8所示。

圖24-7 接收地理位置信息

圖24-8 公交線路和駕車線路規劃