本文实例讲述了php微信公众开发之获取周边酒店信息的方法。分享给大家供大家参考。具体分析如下:
关注微信公众之后发送回复地理位置信息,即可回复周边附近的酒店信息列表,下面我就来给各位介绍利用php是怎么实现这个功能,希望全子对大家有帮助.代码如下:
复制代码 代码如下:<"jb51.net"; 
 //判断接入网站 
 
 //进行字典排序 
 $arr = array($token,$timestamp,$nonce); 
 
 sort($arr); 
 
 //完成字符串的拼接和sha1加密 
 $result = sha1(join($arr)); 
 //判断生成的字符串和$signature是否相等,如果相等,直接输出$echostr,这样网站接入成功 
 if($result==$signature){ 
 echo $echostr; 
 } 
 
 //接收微信公众账号接收到的信息 
 $poststr = $GLOBALS["HTTP_RAW_POST_DATA"]; 
 
 $xmlObj = simplexml_load_string($poststr,'SimpleXMLElement',LIBXML_NOCDATA); 
 $ToUserName = $xmlObj->ToUserName; 
 $FromUserName = $xmlObj->FromUserName; 
 $CreateTime = $xmlObj->CreateTime; 
 $MsgType = $xmlObj->MsgType; 
 $Content = $xmlObj->Content; 
 
 if($MsgType=='location'){ 
 $Location_X = $xmlObj->Location_X; 
 $Location_Y = $xmlObj->Location_Y; 
 $Scale = $xmlObj->Scale; 
 $Label = $xmlObj->Label; 
 
 $urlstr = "http://api.map.baidu.com/place/v2/search".$Location_X.",".$Location_Y."&radius=5000&output=json&ak=DESY8unmZnUlLB0mlowjuiRr";  //此处ak参数需要个人的百度开发序列号,自己去百度申请下就好了 
 $jsonstr = file_get_contents($urlstr); 
 $json = json_decode($jsonstr,true); 
 
 $pic_640 = "http://api.map.baidu.com/staticimage".$Location_Y.",".$Location_X."&zoom=15&markers=".$Location_Y.",".$Location_X."&markerStyles=l,"; 
 $pic_80 = "http://api.map.baidu.com/staticimage".$Location_Y.",".$Location_X."&zoom=15&markers=".$Location_Y.",".$Location_X."&markerStyles=l,"; 
 $p_640 = file_get_contents($pic_640); 
 file_put_contents('./images/640_'.$FromUserName.".png",$p_640); 
 $p_80 = file_get_contents($pic_80); 
 file_put_contents('./images/80_'.$FromUserName.".png",$p_80); 
 echo pic_send($json['results']); 
 } 
 function pic_send($arr){ 
 global $ToUserName,$FromUserName; 
 $str = "<xml> 
 <ToUserName><![CDATA[".$FromUserName."]]></ToUserName> 
 <FromUserName><![CDATA[".$ToUserName."]]></FromUserName> 
 <CreateTime>".time()."</CreateTime> 
 <MsgType><![CDATA[news]]></MsgType> 
 <ArticleCount>".count($arr)."</ArticleCount> 
 <Articles>"; 
 foreach($arr as $k=>$v){ 
 if($k==0){ 
 $picurl = "http://jb51.net/weixin/images/640_".$FromUserName.".png"; 
 }else{ 
 $picurl = "http://jb51.net.net/weixin/images/80_".$FromUserName.".png"; 
 } 
 $str .=" 
 <item> 
 <Title><![CDATA[".$v['name']." 地址:".$v['address']." 电话:".$v['telephone']."]]></Title> 
 <Description><![CDATA[".$v['name']." 地址:".$v['address']." 电话:".$v['telephone']."]]></Description> 
 <PicUrl><![CDATA[".$picurl."]]></PicUrl> 
 <Url><![CDATA[http://api.map.baidu.com/place/detail".$v['uid']."&output=html&src="/UploadFiles/2021-04-02/.$v['name'].">
 </item>";
 } 
 $str .= "</Articles></xml>"; 
 return $str; 
 } 
?>
希望本文所述对大家的php程序设计有所帮助。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?