本文实例讲述了php微信公众开发之获取周边酒店信息的方法。分享给大家供大家参考。具体分析如下:
关注微信公众之后发送回复地理位置信息,即可回复周边附近的酒店信息列表,下面我就来给各位介绍利用php是怎么实现这个功能,希望全子对大家有帮助.代码如下:
<?php <br /> //将提交过来的信息接收 <br />$signature = $_GET['signature']; <br /> $timestamp = $_GET['timestamp']; <br /> $nonce = $_GET['nonce']; <br /> $echostr = $_GET['echostr']; <br /> $token = "jb51.net"; <br /> //判断接入网站 <br /> <br /> //进行字典排序 <br /> $arr = array($token,$timestamp,$nonce); <br /> <br /> sort($arr); <br /> <br /> //完成字符串的拼接和sha1加密 <br /> $result = sha1(join($arr)); <br /> //判断生成的字符串和$signature是否相等,如果相等,直接输出$echostr,这样网站接入成功 <br /> if($result==$signature){ <br /> echo $echostr; <br /> } <br /> <br /> //接收微信公众账号接收到的信息 <br /> $poststr = $GLOBALS["HTTP_RAW_POST_DATA"]; <br /> <br /> $xmlObj = simplexml_load_string($poststr,'SimpleXMLElement',LIBXML_NOCDATA); <br /> $ToUserName = $xmlObj->ToUserName; <br /> $FromUserName = $xmlObj->FromUserName; <br /> $CreateTime = $xmlObj->CreateTime; <br /> $MsgType = $xmlObj->MsgType; <br /> $Content = $xmlObj->Content; <br /> <br /> if($MsgType=='location'){ <br /> $Location_X = $xmlObj->Location_X; <br /> $Location_Y = $xmlObj->Location_Y; <br /> $Scale = $xmlObj->Scale; <br /> $Label = $xmlObj->Label; <br /> <br /> $urlstr = "http://api.map.baidu.com/place/v2/search?&query=酒店&location=".$Location_X.",".$Location_Y."&radius=5000&output=json&ak=DESY8unmZnUlLB0mlowjuiRr"; //此处ak参数需要个人的百度开发序列号,自己去百度申请下就好了 <br /> $jsonstr = file_get_contents($urlstr); <br /> $json = json_decode($jsonstr,true); <br /> <br /> $pic_640 = "http://api.map.baidu.com/staticimage?width=640&height=320¢er=".$Location_Y.",".$Location_X."&zoom=15&markers=".$Location_Y.",".$Location_X."&markerStyles=l,"; <br /> $pic_80 = "http://api.map.baidu.com/staticimage?width=80&height=80¢er=".$Location_Y.",".$Location_X."&zoom=15&markers=".$Location_Y.",".$Location_X."&markerStyles=l,"; <br /> $p_640 = file_get_contents($pic_640); <br /> file_put_contents('./images/640_'.$FromUserName.".png",$p_640); <br /> $p_80 = file_get_contents($pic_80); <br /> file_put_contents('./images/80_'.$FromUserName.".png",$p_80); <br /> echo pic_send($json['results']); <br /> } <br /> function pic_send($arr){ <br /> global $ToUserName,$FromUserName; <br /> $str = " <br /> <br /> <br /> ".time()." <br /> <br /> ".count($arr)." <br /> "; <br /> foreach($arr as $k=>$v){ <br /> if($k==0){ <br /> $picurl = "http://jb51.net/weixin/images/640_".$FromUserName.".png"; <br /> }else{ <br /> $picurl = "http://jb51.net.net/weixin/images/80_<i>·本2文来源gaodai$ma#com搞$代*码网2</i><strong>搞gaodaima代码</strong>".$FromUserName.".png"; <br /> } <br /> $str .=" <br /> <br /> <Title></Title> <br /> <br /> <br /> <br /> ";<br /> } <br /> $str .= ""; <br /> return $str; <br /> } <br />?>
希望本文所述对大家的php程序设计有所帮助。