张惠奇

时间是培养一切的土壤

微信公众号开发完整教程(五) PHP7.0版本,TP5.0框架

因为工作的需要,这一两年对微信公众号和小程序,项目制作的比较多。所以我才打算写一篇全面的制作教程,当然了,最好的教程是微信工作平台的文档。我这里只是讲述一下我的工作中的制作流程。所有相关文章的源码,我托管在我自己的github上面,欢迎关注:地址点击打开链接。接下来开始我们的教程。这一节我们讲述素材上传。

1.上传临时素材:

当在对用户进行消息回复或者进行消息的推送时基本上都需要使用到素材。微信将素材进行类型的划分例如、图片、语言、视频、图文。同时也对素材进行了临时跟永久的区分。临时素材只能保持三天。永久素材可以长期保存但是有使用的上限

微信文档如下:


代码如下:

<?php
namespace app\home\controller;
use think\Controller;
require_once('function.php');
class File extends Controller{
public $accessToken ="";
public function __construct()
{
parent::__construct();
$this->accessToken =get_access_token();
}
public function lsupload()
{
$url="https://api.weixin.qq.com/cgi-bin/media/upload?access_token=".$this->accessToken."&type=image";
$file =dirname(THINK_PATH).'/1.jpg';
$data = array(
"media"=>new \CurlFile($file)
);
$res = http_curl($url,$data,'post');
dump($res);
}


}

上述并没有继承公共控制器,是为了不走网页授权:

结果如下:


2.上传视频素材:

代码如下:

public function addVideo()
{
    $url = 'https://api.weixin.qq.com/cgi-bin/material/add_material?access_token='.$this->accessToken.'&type=video';
    $file = dirname(THINK_PATH).'/1.mp4';

$data = array(
'media'=>new \CurlFile($file),
'description'=>'{"title":"高清大片","introduction":"PHP与Java对比"}'
);
$res = http_curl($url,$data,'post');
dump($res);
}

结果如下:


3.上传永久素材:

大家可以看看微信开发者文档的


上传的方式都是大同小异的。我们可以把上传的永久素材返回的地址保存在数据库,这样就可以频繁使用了。


4.消息群发:

4.1创建标签:

文档如下:

代码如下:

// 创建标签
public function createTag()
{
    $url = 'https://api.weixin.qq.com/cgi-bin/tags/create?access_token='.$this->accessToken;
    $data = '{"tag" : {"name" : "中国好声音"}}';
    $res = http_curl($url,$data,'post');
    dump($res);
}

结果如下:


4.2查看已有标签

文档如下:


代码如下:

// 查看已有标签
public function getTag()
{
    $url = 'https://api.weixin.qq.com/cgi-bin/tags/get?access_token='.$this->accessToken;
    $res = http_curl($url);
    dump($res);
}

结果如下:


4.3批量为用户设置标签:

文档如下:


代码如下:

//设置标签
public function setTag()
{
    $url = 'https://api.weixin.qq.com/cgi-bin/tags/members/batchtagging?access_token='.$this->accessToken;
    $data = '{"openid_list" : ["oOnXGwpc7_8My4YLpDkTnbSFdrak","oOnXGwsELMp54MG3Vl0abY4aLluk" ], "tagid" : 100 }';
    $res = http_curl($url,$data,'post');
    dump($res);
}
使用上述创建的标签id和关注者的openid

结果如下:


4.4按照标签给用户群发消息:

微信模板:


代码如下:

// 按照标签给用户群发消息
public function send()
{
    $url = 'https://api.weixin.qq.com/cgi-bin/message/mass/sendall?access_token='.$this->accessToken;
    // 根据要发送的消息的类型判断拼接不同的json格式数据
    $data='{
         "filter":{
         "is_to_all":false,
         "tag_id":100
         },
         "text":{
         "content":"根据要发送的消息的类型判断拼接不同的json格式数据"
         },
         "msgtype":"text"
        }';
        $res = http_curl($url,$data,'post');
    dump($res);
}

结果如下:



微信公众号的开发,对微信开发者文档的阅读是最主要的。目前暂时先写到这里,后续慢慢在分享一些不错的制作案例.........

阅读更多

扫码向博主提问

去开通我的Chat快问

zhanghuiqi205

非学,无以致疑;非问,无以广识
  • 擅长领域:
  • JavaScript
  • CSS
  • Nginx
  • MySQL
  • 规划和使用插件
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhanghuiqi205/article/details/79969478
个人分类: 微信公众号开发
所属专栏: 微信公众号和小程序
上一篇微信公众号开发完整教程(四) PHP7.0版本,TP5.0框架
下一篇对阿里的技术开放的所思所想--------研发篇
想对作者说点什么? 我来说一句

TP+PHP 微信公众号 图文 菜单创建

2016年03月18日 1.68MB 下载

没有更多推荐了,返回首页

关闭
关闭