您现在的位置是:博客首页 > 网站开发 > 微信开发 > 微信开发
微信公众号开发完整教程(三) PHP7.0版本,TP5.0框架
张惠奇2019-06-25【个人博客】人已围观
简介对于微信开发,其实最主要的就是阅读微信开发者文档,并细心的书写和替换变量,还有就是会细致的去调试错误,慢慢达到自己的要求。第二篇提到的百度地图和图灵机器人,我们这
	对于微信开发,其实最主要的就是阅读微信开发者文档,并细心的书写和替换变量,还有就是会细致的去调试错误,慢慢达到自己的要求。第二篇提到的百度地图和图灵机器人,我们这一节讲述:
	先给大家看看效果:图灵机器人
	百度地图的使用:
	这一节我们就开始讲解自定义菜单的使用:讲述完成,开始讲述百度和图灵机器人
	1.自定义菜单
	微信的文档:
	自定义菜单的按钮的类型:
	接口说明:
	代码如下:(可以本地测试)
	public function creatMenu()
	{
	//组装请求的url地址
	$url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=".$this->accessToken;
	$data = array(
	// button下的每一个元素
	"button"=>array(
	//第一个一级菜单
	array('type'=>'click',"name"=>"个人简介","key"=>"info"),
	array(
	"name"=>"语言排行",
	"sub_button"=>array(
	array("name"=>'商品列表',"type"=>"view",
	'url'=>"http://xiaoziheng.club/home/demo/demo4"),
	array('name'=>'c/c++','type'=>'pic_sysphoto','key'=>'sysptoto'),
	array('name'=>'java','type'=>'pic_weixin','key'=>'pic_weixin')
	)
	),
	array('type'=>'click','name'=>'xxxx','key'=>'content')
	)
	);
	// 将数据转换为json格式
	$data = json_encode($data,JSON_UNESCAPED_UNICODE);
	$result = http_curl($url,$data,'post');
	dump($result);
	}
	结果如下:
	2.自定义菜单查询:
	代码:
	//获取自定义菜单
	public function getMenu()
	{
	$url = "https://api.weixin.qq.com/cgi-bin/menu/get?access_token=".$this->accessToken;
	$res =http_curl($url);
	var_dump($res);
	}
	结果:数组显示(这里稍微有点异常,但是结果是没有问题的)
	3.自定义菜单删除:
	代码:
	// 删除自定义菜单
	public function delMenu()
	{
	$url = 'https://api.weixin.qq.com/cgi-bin/menu/delete?access_token='.$this->accessToken;
	$res =http_curl($url);
	dump($res);
	}
	结果:
	4.自定义菜单中事件的推送:
	文档:
	代码:
	结果如下:
	5.微信关注回复:
	微信文档
	代码如下:
	结果如下:
	6.数据库的使用(图灵机器人的使用):
	我们可以在数据库建立关键字的数据表,让关注者回复的内容可以被我们控制,
	如果没有内容找到,那么我们就使用图灵机器人来帮助我们:
	首先进入官网:
	创建机器人:我已经申请过一个
	获得接入的key:
	查看文档的使用:
	代码:
	// 根据keyword表中的字段进行相等匹配
	$info = db('Keyword')->where(array('keyword'=>$keyword))->find();
	if(!$info){
	//针对没有匹配的关键词使用机器人回复
	$url ="http://www.tuling123.com/openapi/api?key=96308475006241449b53013d66f8e387&info="
	.$keyword;
	$result = file_get_contents($url);
	$result = json_decode($result,true);
	if($result['code'] == 100000){
	// 回复文本消息
	$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, 'text',
	$result['text']);
	}elseif ($result['code'] == 200000) {
	$str = '<a href="'.$result['url'].'">'.$result['text'].'</a>';
	// 机器人中区分为链接
	$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, 'text', $str);
	}elseif ($result['code'] ==302000) {
	// 机器人中的新闻
	$data = $result['list'];
	for($i=0;$i<8;$i++){
	$Articles ="<item>
	<Title><![CDATA[{$data[$i]['article']}]]></Title>
	<Description><![CDATA[{$data[$i]['article']}]]></Description>
	<PicUrl><![CDATA[{$data[$i]['icon']}]]></PicUrl>
	<Url><![CDATA[{$data[$i]['detailurl']}]]></Url>
	</item>";
	}
	$count = 1;
	$resultStr = sprintf($newsTpc, $fromUsername, $toUsername, $time,
	'news',$count,$Articles); 
	}else{
	// 回复文本消息
	$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, 'text',
	'抱歉没有理解,再说一遍问题');
	}
	echo $resultStr;
	// file_put_contents('2',33333);
	exit;
	}
	效果就是我上述的截图一样。
	7.百度地图的使用:
	基于地理位置的定位服务,根据经度纬度定位用户的具体地址
	LBS(Location Based Service):基于地理位置的服务
	$longitude 经度
	$latitude 纬度
	接口的获取:
	代码如下:
	结果如文章开始的时候的截图。
	下一节讲述网页授权的微信开发........
	--------------------- 
	作者:张惠奇 
	来源:CSDN 
        
        很赞哦! ()
点击排行
零基础微信开发详细教程本栏推荐
微信公众号开发完整教程(一) PHP标签云
猜你喜欢
站点信息
- 建站时间:2019-05-13
 - 网站程序:魔豆CMS7.5
 - 博客名称:程序员之路
 - 文章统计:117 篇
 - 源码统计:6 篇
 - 访问统计:
 - 微信公众号:扫描二维码,关注我们
 
      
          
          
          
