网站头部欢迎信息,自己发挥啦

广告赞助

家电常识推荐阅读

主页 > 家电常识 > INTRODUCE

5分钟教你使用PHP极速开发微信公众号框架

2014-12-08 12:10 作者:中国数字家电网 来源:互联网 浏览: 我要评论 (条) 字号:

摘要:5分钟教你使用PHP极速开发微信公众号框架

阮元浩 都市少帅万书楼 来来回回锄7你 双羊保岁 亮哲老婆 js12530 百里挑一45期 缝合场肩垫 www.283b.com 某某敬贺 熊建平去向 东方后宫论坛 边疆泉水清又纯简谱

框架内容已经正式迁移到了 请移步,点击 PHP微信开发框架 传送

框架名称:LaneWeChat   微信开发框架PHP

框架版本:1.2

框架简介:这是一个为快速开发微信应用而生的PHP框架。将微信的开发者功能根据文档进行了封装。为了快速开发的目的,开发者完全不需要要知道具体是如何实现的,只需要简单的调用方法即可。微信框架LaneWeChat,经过中国联通、奇虎360等多家公司使用的微信PHP框架,轻量、高效。完美的封装了PHP微信开发的功能点,只需要调用封装好的函数,5分钟上手,10分钟精通PHP微信开发。LaneWeChat微信开发框架为全国大中小企业提供了接入微信的好机会。

开发语言:PHP

版本要求:原则PHP5.3以上

版本规避:若版本低于PHP5.3,则删除本框架所有页面开头namespace一行即可。

命名空间:本框架的命名空间均为LaneWeChat开头。

下载地址:https://github.com/lixuancn/LaneWeChat/archive/master.zip

GitHub:https://github.com/lixuancn/LaneWeChat

目前还没有微信支付这些,只有微信公众账号的相关功能,希望大家闲暇时间也可以贡献代码。

Developer Blog:

文档地址:

更新日志:

2014-08-17:1.2版本。新增自定义菜单功能,多媒体上传与下载(media_id的获取途径)。更新说明:

2014-08-07:1.0版本

文档目录:

1、常识普及。

2、如何安装。

3、初出茅庐。

4、流程分析。

5、牛刀小试。

6、函数详解。

7、实例示范。

常识普及:

一、微信公众账号分两种,一种是订阅号,一种是服务号。

1、订阅号是被动响应用户消息功能,并且每天推送一条消息。

2、服务号是300元/每年认证,被动响应用户消息,主动给用户发送消息,自定义菜单按钮,网页授权等功能,并且每月推送一条消息。

3、订阅号适合消息类,新闻类应用,常常需要推送文章给用户的;服务号适合自助查询等。

4、订阅号被认证后也享用自定义菜单等功能,仍旧是300元/每年

二、专业术语:

1、OpenId:微信服务器并不会告诉公众号用户的微信ID,即使是你的关注者也不行,为了解决开发中唯一标识的问题,微信使用了OpenId,所谓的OpenId,就是用户和微信公众号之间的一种唯一关系。一个用户在一个公众号面前,享用唯一的OpenId,不会和别人重复。换言之,同一个用户在另一个公众号面前,是拥有另一个OpenId的。再直白些就是$openId = md5('用户微信ID+公众号ID')

2、Access_Token:此项只有认证号的功能才会使用的到,Access_token是一个授权标识,即一个授权验证码,一个标识10分钟内有效,10分钟的有效期内公众号的多个关注者可以使用同一个Access_Token。在使用主动给指定用户发送消息、自定义菜单、用户管理和用户组管理等功能的时候,每次操作需要给微信服务器以参数的形式附带Access_token。

3、Access_Token网页版:本Access_Token网页版授权时会使用到,和2中的Access_Toekn是不同的东西,不过使用我们的LaneWeChat微信快速开发框架是不需要了解这些的。Access_Token网页版是说在用户打开你的公众号提供的网页的时候,你的网页需要获取用户的OpenId、昵称、头像等信息的时候授权用的。同时,本Access_Token网页版有两种用法,一种是打开网页后弹出一个授权框,让用户点击是否授权,界面像主流的开放平台授权界面(比如QQ登陆某网站,支付宝账号登陆某网站等);另一种是不需要弹出授权框仍旧可以获取用户信息,用法可以在实例中看到。

如何安装:

1、本框架以代码包的插件形式放在项目的目录中即可。

2、配置项:打开根目录下的config.php,修改定义常量WECHAT_APPID,WECHAT_APPSECRET,WECHAT_URL。其中前两项可以在微信公众号官网的开发者页面中找到,而WECHAT_URL是你微信项目的URL,以开头

3、本框架的唯一入口为根目录下的wechat.php

4、首次使用时,请打开根目录下的wechat.php,注释掉20行,21行,并且打开注释第24行。

5、在微信开发者-填写服务器配置页面,填写URL为,保证该URL可以通过80端口正常访问(微信服务器目前只支持80端口),并且将Token填写为config.php中的WECHAT_TOKEN常量的内容(可以修改)。

6、微信服务器在第4步验证通过后,反向操作第4步,即注释掉第24行,打开注释第20行,21行。至此,安装配置完成。

初出茅庐:

1、给你的微信公众号发送一条文本消息,比如hello world或者其他什么的。这个时候你应该会收到一条“收到文本”的服务器反馈的被动响应的消息。

2、这个时候你需要先为自己鼓掌。

流程分析:

1、我们给微信服务器发送了一条“hello world”的文本消息。

2、微信服务器收到我们的消息后,查找该公众账号所配置的服务器信息中的URL(如何安装部分 - 第5步)。

3、微信服务器向第二步获取的URL发送请求,参数是微信服务器自己拼接过的XML格式。

4、根目录下的wechat.php,引入了我们的配置文件和所需的类后,进入了类WeChat的方法run()。该类位于core/wechat.lib.php。微信的XML数据此时已经被解析为数组,变量名为$request。

5、然后,我们进入了类WechatRequest的方法switchType(),根据不同的消息类型,给予不同的响应。比如用户发送文本消息和关注事件,给出的返回应该是不同的。当然,你要给出同样的提示也不能说是错的。

6、在第5步中的方法中,是一个switch,根据消息类型(此时是文本类型,微信服务器给我的是text)选择了一个处理文本消息的方法,类WechatRequest中的方法text()。该方法的功能是发送文本消息,文本内容是“收到文本”。

7、此时,我们return了一个数据返回给了上层调用,层层return,就到了我们根目录的下的唯一入口文件wechat.php,此时我们返回的数据被echo出来了。

8、微信服务器拿到了输出的数据,微信服务器进行分析和处理,将文本发送给了用户的微信客户端。我们就在手机上看到了微信输出的“收到文本”。

9、流程结束,这就是发送“hello world”,然后返回给用户“收到文本”。

牛刀小试:

1、打开core/wechatrequest.php文件,讲方法text()中的变量修改为$content = '收到文本消息'.$request['content'];

2、保存并且上传到你的服务器。

3、在微信中打开你的公众号,输入文本消息“hello world”。见证奇迹的时刻到了。这个时候你的手机微信客户端中现实的是“收到文本消息hello world”。

函数详解:

一、被动给用户发送消息。

1、类简介:用户输入文本、图片、语音、音乐、视频等消息,以及关注、取消关注,上报地理位置等事件后,服务器被动给出应答。

2、使用命名空间:use LaneWeChat\Core\ResponsePassive;

3、参数:  $fromusername = "谁发给你的?(用户的openId)"  在变量$request['fromusername']中

$tousername = "你的公众号Id";                 在变量$require['tousername']中

$mediaId = "通过上传多媒体文件,得到的id。";

4、发送文本

ResponsePassive::text($fromusername, $tousername, '文本消息内容');

5、发送图片

ResponsePassive::image($fromusername, $tousername, $mediaId);

6、发送语音

ResponsePassive::voice($fromusername, $tousername, $mediaId);

7、发送视频

ResponsePassive::video($fromusername, $tousername, $mediaId, '视频标题', '视频描述');

8、发送音乐

ResponsePassive::music($fromusername, $tousername, '音乐标题', '音乐描述', '音乐链接', '高质量音乐链接,WIFI环境优先使用该链接播放音乐', '缩略图的媒体id,通过上传多媒体文件,得到的id');

9、发送图文

1)创建图文消息内容

$tuwenList = array();

$tuwenList[] = array('title'=>'标题1', 'description'=>'描述1', 'pic_url'=>'图片URL1', 'url'=>'点击跳转URL1');

$tuwenList[] = array('title'=>'标题2', 'description'=>'描述2', 'pic_url'=>'图片URL2', 'url'=>'点击跳转URL2');

2)构建图文消息格式

$itemList = array();

foreach($tuwenList as $tuwen){

$itemList[] = ResponsePassive::newsItem($tuwen['title'], $tuwen['description'], $tuwen['pic_url'], $tuwen['url']);

}

3)发送图文消息

ResponsePassive::news($fromusername, $tousername, $itemList);

二、AccessToken授权。

(责任编辑:admin)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
◎最新评论
      谈谈您对该文章的看
      表  情:
      评论内容:
      点击我更换图片
      * 请注意用语文明且合法,谢谢合作 审核后才会显示! Ctrl+回车 可以直接发表