账户中心 我的话题 我的评论 退出系统

临时素材管理

新增临时素材

公众号经常有需要用到一些临时性的多媒体素材的场景,例如在使用接口特别是发送消息时,对多媒体文件、多媒体消息的获取和调用等操作,是通过media_id来进行的。素材管理接口对所有认证的订阅号和服务号开放。通过本接口,公众号可以新增临时素材(即上传临时多媒体文件)。注意:

1、临时素材media_id是可复用的。
2、媒体文件在微信后台保存时间为3天,即3天后media_id失效。
3、上传临时素材的格式、大小限制与公众平台官网一致。
    图片(image): 2M,支持PNG\JPEG\JPG\GIF格式
    语音(voice):2M,播放长度不超过60s,支持AMR\MP3格式
    视频(video):10MB,支持MP4格式
    缩略图(thumb):64KB,支持JPG格式
4、需使用https调用本接口。


获取临时素材

公众号可以使用本接口获取临时素材(即下载临时的多媒体文件)。请注意,视频文件不支持https下载,调用该接口需http协议。

使用$gracewechat->uploadMedia($mediaFile)上传一个临时素材

参数 :素材的本地路径

使用$gracewechat->downloadMedia($mediaId, $saveName) 下载临时素材

参数 :1、临时素材id, 2、下载后保存位置及扩展名


完整演示代码

<?php
class wxController extends grace{
    public function index(){
        $gracewechat = tool('graceWeChat');
        //媒体地址可以上传后获得,本示例以一个图片为例
        //媒体文件类型,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb)默认为 image
        $mediaFile = 'demo.jpg';
        $mediaId    = $gracewechat->uploadMedia($mediaFile);
        if($mediaId){
            echo '临时素材上传成功,mediaId : '.$mediaId;
            //下载素材演示
            //说明 临时素材还可以来自于微信客户端的照片选择、语音录制等
            $downLoadFile = $gracewechat->downloadMedia($mediaId, 'demo2.jpg');
            echo '<br />下载临时素材成功,'.$downLoadFile;
        }
    }
}