php微信公众开发之获取周边酒店信息的方法
发布时间:2020-12-13 02:17:24 所属栏目:PHP教程 来源:网络整理
导读:《:php微信公众开发之获取周边酒店信息的方法》要点: 本文介绍了:php微信公众开发之获取周边酒店信息的方法,希望对您有用。如果有疑问,可以联系我们。 PHP教程 本篇章节讲解php微信公众开发之获取周边酒店信息的办法.供大家参考研究.具体分析如
《:php微信公众开发之获取周边酒店信息的方法》要点: PHP教程本篇章节讲解php微信公众开发之获取周边酒店信息的办法.分享给大家供大家参考.具体分析如下: PHP教程关注微信公众之后发送回复地理位置信息,即可回复周边附近的酒店信息列表,下面我就来给各位介绍利用php是怎么实现这个功能,希望全子对大家有赞助.代码如下:
代码如下:
<?php
?//将提交过来的信息接收 $signature = $_GET['signature']; ?$timestamp = $_GET['timestamp']; ?$nonce = $_GET['nonce']; ?$echostr = $_GET['echostr']; ?$token = "aspzz.cn"; ?//判断接入网站 ? ?//进行字典排序 ?$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?&query=酒店&location=".$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?width=640&height=320¢er=".$Location_Y.",".$Location_X."&zoom=15&markers=".$Location_Y.",".$Location_X."&markerStyles=l,"; ?$pic_80 = "http://api.map.baidu.com/staticimage?width=80&height=80¢er=".$Location_Y.","; ?$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://aspzz.cn/weixin/images/640_".$FromUserName.".png"; ?}else{ ?$picurl = "http://aspzz.cn.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?uid=".$v['uid']."&output=html&src=".$v['name']."&output=html]]></Url> ?</item>"; ?} ?$str .= "</Articles></xml>"; ?return $str; ?} ?> PHP教程希望本文所述对大家的php程序设计有所赞助. 欢迎参与《:php微信公众开发之获取周边酒店信息的方法》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |