PHP微信开发素材管理,PHP微信开发包,微信开发SDK

本人自己用PHP原生开发的微信SDK包,有兴趣得可以了解一下。可以通过composer安装,或者码云下载。感兴趣的可以加Q群:735713840 相互讨论

使用详情见 index.php 文件内注释

开发中使用本人申请的微信测试号,如需自己体验可前往 微信测试号申请地址 申请

项目还在开发阶段,如遇问题请联系我.

目录结构

|—— cache 文件缓存驱动存储空间

|—— lib 包主文件夹

| |—— cache 缓存驱动

| |—— core 核心文件

| |—— http 接口请求驱动

| |—— Cache.php 缓存类文件

| |—— Config.php 配置获取类

| |—— Http.php 接口请求类

| |—— Wechat.php 主类

|—— vendor composer依赖

|—— config.php 配置文件

|—— index.php 方法示例描述

安装方法 composer require taurus12c/wechat

使用方法

1、开始

配置好包根目录的config.php文件,导入Wechat类,完成微信开发

use wechat\lib\Wechat;

实例化对象

$wechat = new Wechat();

2、鉴权

接口配置服务器验证方法。一般只需用到一次

$wechat->checkSignature();

获取微信全局access_token,公众号给类接口调用时所用的access_token

$global_access_token = $wechat->getGlobalAccessToken();

微信网页授权获取用户信息

$userInfo = $wechat->getUserInfo();

单独获取用户openid,此获取不跳转用户授权界面,静默授权

$openid = $wechat->getOpenId();

2、自定义菜单

//设置公众号菜单,方法形参$data强制数组,返回bool型。菜单设置方式请遵从微信自定义菜单规则

$data = [

"button"=>[

[

"name" =>"按钮一",

"type" =>"view",

"url" =>"http://www.baidu.com",

],

[

"name" =>"按钮二",

"sub_button" =>[

[

"name" =>"二级菜单1",

"type" =>"view",

"url" =>"http://www.baidu.com"

]

]

]

]

];

$setMenu = $wechat->menu->setMenu($data);

获取当前自定义菜单设置

$getMenu = $wechat->menu->getMenuInfo();

删除自定义菜单

$delMenu = $wechat->menu->delMenu();

设置个性化菜单,data菜单设置样式,data菜单设置样式,matchrule个性化菜单匹配规则,返回bool型,详情微信手册

$data = [

"button"=>[

[

"name" =>"按钮一",

"type" =>"view",

"url" =>"http://www.baidu.com",

],

[

"name" =>"按钮二",

"sub_button" =>[

[

"name" =>"二级菜单1",

"type" =>"view",

"url" =>"http://www.baidu.com"

]

]

]

],

];

$matchrule = [

"matchrule"=>[

"tag_id"=> "2",

"sex"=> "1",

"country"=> "中国",

"province"=> "广东",

"city"=> "广州",

"client_platform_type"=> "2",

"language"=> "zh_CN"

]

];

$setMenuConditional = $wechat->menu->setMenuConditional($data,$matchrule);

获取个性化菜单设置

$getMenuConditionalInfo = $wechat->getMenuConditionalInfo();

3、消息管理

接收用户发来的消息,返回数组类型数据,数据内容见微信开发文档

$msg = $wechat->getMsg();

被动回复文本消息,参数1:接收方openid 参数2:开发者openid 参数3:发送内容,以下使用接收来的数据

$sendText = $wechat->sendText($msg['FromUserName'],$msg['ToUserName'],'您发送的内容是:'.$msg['Content']);

被动回复图片消息,参数1:接收方openid 参数2:开发者openid 参数3:上传的图片素材id

$sendImg = $wechat->sendImg($toUserName,$fromUserName,$mediaId);

被动回复语音消息,参数1:接收方openid 参数2:开发者openid 参数3:上传的语音素材id

$sendVoice = $wechat->sendVoice($toUserName,$fromUserName,$mediaId);

被动回复视频消息,参数1:接收方openid 参数2:开发者openid 参数3:数组(格式见下方参考)

$content = [

'title' => '', //标题

'desc' => '', //描述

'mediaId' => '', //上传的素材ID

];

$sendVideo = $wechat->sendVoice($toUserName,$fromUserName,$content);

被动回复音乐消息,参数1:接收方openid 参数2:开发者openid 参数3:数组(格式见下方参考)

$content = [

'title' => '', //标题

'desc' => '', //描述

'url' => '', //音乐链接

'Hurl' => '', //高品质音乐链接,WIFI状态下默认播放这个

'thumbMediaId' => '', //消息缩略图,上传的图片素材ID

];

$sendMusic = $wechat->sendVoice($toUserName,$fromUserName,$content);

被动回复图文消息,参数1:接收方openid 参数2:开发者openid 参数3:数组(格式见下方参考)

$articles = [

'第一篇' => [

'title' => '', //标题

'desc' => '', //描述

'picurl' => '', //缩略图url

'url' => '', //点击跳转页面url

],

'第二篇' => [],

'第三篇' => [],

... //一次性最多发送8篇,数量限制详情见微信开发文档

];

$sendNews = $wechat->sendNews($toUserName,$fromUserName,$articles);

4、素材管理

素材上传提示

图片(image): 2M,支持PNG\JPEG\JPG\GIF格式

语音(voice):2M,播放长度不超过60s,支持AMR\MP3格式

视频(video):10MB,支持MP4格式

缩略图(thumb):64KB,支持JPG格式

上传图片临时素材文件,参数1:文件路径。返回json格式字符串数据内容见微信开发手册

$tempMedia = $wechat->media->addImgTempMedia($filepath);

上传语音临时素材文件,参数1:文件路径。返回json格式字符串数据内容见微信开发手册

$tempMedia = $wechat->media->addVoiceTempMedia($filepath);

上传视频临时素材文件,参数1:文件路径。返回json格式字符串数据内容见微信开发手册

$tempMedia = $wechat->media->addVideoTempMedia($filepath);

上传缩略图临时素材文件,参数1:文件路径。返回json格式字符串数据内容见微信开发手册

$tempMedia = $wechat->media->addThumbTempMedia($filepath);

获取临时素材,参数1:素材media_id 图片素材返回图片文件流字符串 视频素材返回json格式字符串包含视频url地址。以下示例将获取的图片素材文件流保存为本地文件

$getTempMedia = $wechat->media->getTempMedia($media_id);

$file = fopen('test.jpg','w+');

fwrite($file,$getTempMedia);

fclose($file);

获取jssdk上传的高清语音

$getJssdkMedia = $wechat->media->getJssdkMedia($media_id)

上传图片永久素材

$addImgMaterial = $wechat->media->addImgMaterial($file);

上传语音永久素材

$addVoiceMaterial = $wechat->media->addVoiceMaterial($file);

上传永久视频素材,参数1:文件路径 参数2:视频标题 参数3:视频描述

$addVideoMaterial = $wechat->media->addVideoMaterial($file,$title,$introduction);

上传永久缩略图素材

$addThumbMaterial = $wechat->media->addThumbMaterial($file);

上传图文永久素材,参数1:图文内容数组,返回素材media_id

$articles = [

[

"title" => 'TITLE', //标题

"thumb_media_id" => 'THUMB_MEDIA_ID', //图文消息的封面图片素材id(必须是永久mediaID)

"author" => 'AUTHOR', //作者

"digest" => 'DIGEST', //图文消息的摘要,仅有单图文消息才有摘要,多图文此处为空。如果本字段为没有填写,则默认抓取正文前64个字。

"show_cover_pic" => 'SHOW_COVER_PIC(0 / 1)',//是否显示封面,0为false,即不显示,1为true,即显示

"content" => 'CONTENT', //图文消息的具体内容,支持HTML标签,必须少于2万字符,小于1M,且此处会去除JS,涉及图片url必须来源 "上传图文消息内的图片获取URL"接口获取。外部图片url将被过滤。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信公众平台 PHP 开发,细化了微信的各项接口操作。调用官方API,具有更灵活的消息分类响应方式,支持链式调用操作 。 主要功能 接入验证 (初级权限) 自动回复(文本、图片、语音、视频、音乐、图文) (初级权限) 菜单操作(查询、创建、删除) (菜单权限) 客服消息(文本、图片、语音、视频、音乐、图文) (认证权限) 二维码(创建临时、永久二维码,获取二维码URL) (服务号、认证权限) 长链接转短链接接口 (服务号、认证权限) 分组操作(查询、创建、修改、移动用户到分组) (认证权限) 网页授权(基本授权,用户信息授权) (服务号、认证权限) 用户信息(查询用户基本信息、获取关注者列表) (认证权限) 多客服功能(客服管理、获取客服记录、客服会话管理) (认证权限) 媒体文件(上传、获取) (认证权限) 高级群发 (认证权限) 模板消息(设置所属行业、添加模板、发送模板消息) (服务号、认证权限) 卡券管理(创建、修改、删除、发放、门店管理等) (认证权限) 语义理解 (服务号、认证权限) 获取微信服务器IP列表 (初级权限) 微信JSAPI授权(获取ticket、获取签名) (初级权限) 数据统计(用户、图文、消息、接口分析数据) (认证权限) > 备注: > 初级权限:基本权限,任何正常的公众号都有此权限 > 菜单权限:正常的服务号、认证后的订阅号拥有此权限 > 认证权限:分为订阅号、服务号认证,如前缀服务号则仅认证的服务号有此权限,否则为认证后的订阅号、服务号都有此权限 > 支付权限:仅认证后的服务号可以申请此权限 初始化动作  $options = array(     'token'=>'tokenaccesskey', //填写你设定的key     'encodingaeskey'=>'encodingaeskey', //填写加密用的EncodingAESKey     'appid'=>'wxdk1234567890', //填写高级调用功能的app id, 请在微信开发模式后台查询     'appsecret'=>'xxxxxxxxxxxxxxxxxxx' //填写高级调用功能的密钥     );  $weObj = new Wechat($options); //创建实例对象  //TODO:调用$weObj各实例方法   标签:wechat
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值