
//素材
const MEDIA_FOREVER_UPLOAD_URL = '/material/add_material';
const MEDIA_FOREVER_NEWS_UPLOAD_URL = '/material/add_news';
const MEDIA_FOREVER_NEWS_UPDATE_URL = '/material/update_news';
const MEDIA_FOREVER_GET_URL = '/material/get_material';
const MEDIA_FOREVER_DEL_URL = '/material/del_material';
const MEDIA_FOREVER_COUNT_URL = '/material/get_materialcount';
const MEDIA_FOREVER_BATCHGET_URL = '/material/batchget_material';
/
上传临时素材,有效期为3天(认证后的订阅号可用)
注意:上传大文件时可能需要先调用 set_time_limit(0) 避免超时
注意:数组的键值任意,但文件名前必须加@,使用单引号以避免本地路径斜杠被转义
注意:临时素材的media_id是可复用的!
@param array $data {"media":'@Path\filenamejpg'}
@param type 类型::image 语音:voice 视频:video 缩略图:thumb
@return boolean|array
/
public function uploadMedia($data, $type){
if (!$this->access_token && !$this->checkAuth()) return false;
//原先的上传多媒体文件接口使用 self::UPLOAD_MEDIA_URL 前缀
$result = $this->http_post(self::API_URL_PREFIXself::MEDIA_UPLOAD_URL'access_token='$this->access_token'&type='$type,$data,true);
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}
/
获取临时素材(认证后的订阅号可用)
@param string $media_id 媒体文件id
@param boolean $is_video 是否为视频文件,默认为否
@return raw data
/
public function getMedia($media_id,$is_video=false){
if (!$this->access_token && !$this->checkAuth()) return false;
//原先的上传多媒体文件接口使用 self::UPLOAD_MEDIA_URL 前缀
//如果要获取的素材是视频文件时,不能使用https协议,必须更换成http协议
$url_prefix = $is_videostr_replace('https','http',self::API_URL_PREFIX):self::API_URL_PREFIX;
$result = $this->http_get($url_prefixself::MEDIA_GET_URL'access_token='$this->access_token'&media_id='$media_id);
if ($result)
{
if (is_string($result)) {
$json = json_decode($result,true);
if (isset($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
}
return $result;
}
return false;
}
/
上传永久素材(认证后的订阅号可用)
新增的永久素材也可以在公众平台官网素材管理模块中看到
注意:上传大文件时可能需要先调用 set_time_limit(0) 避免超时
注意:数组的键值任意,但文件名前必须加@,使用单引号以避免本地路径斜杠被转义
@param array $data {"media":'@Path\filenamejpg'}
@param type 类型::image 语音:voice 视频:video 缩略图:thumb
@param boolean $is_video 是否为视频文件,默认为否
@param array $video_info 视频信息数组,非视频素材不需要提供 array('title'=>'视频标题','introduction'=>'描述')
@return boolean|array
/
public function uploadForeverMedia($data, $type,$is_video=false,$video_info=array()){
if (!$this->access_token && !$this->checkAuth()) return false;
//#TODO 暂不确定此接口是否需要让视频文件走http协议
//如果要获取的素材是视频文件时,不能使用https协议,必须更换成http协议
//$url_prefix = $is_videostr_replace('https','http',self::API_URL_PREFIX):self::API_URL_PREFIX;
//当上传视频文件时,附加视频文件信息
if ($is_video) $data['description'] = self::json_encode($video_info);
$result = $this->http_post(self::API_URL_PREFIXself::MEDIA_FOREVER_UPLOAD_URL'access_token='$this->access_token'&type='$type,$data,true);
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}
/
上传永久图文素材(认证后的订阅号可用)
新增的永久素材也可以在公众平台官网素材管理模块中看到
@param array $data 消息结构{"articles":[{}]}
@return boolean|array
/
public function uploadForeverArticles($data){
if (!$this->access_token && !$this->checkAuth()) return false;
$result = $this->http_post(self::API_URL_PREFIXself::MEDIA_FOREVER_NEWS_UPLOAD_URL'access_token='$this->access_token,self::json_encode($data));
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}
/
修改永久图文素材(认证后的订阅号可用)
永久素材也可以在公众平台官网素材管理模块中看到
@param string $media_id 图文素材id
@param array $data 消息结构{"articles":[{}]}
@param int $index 更新的文章在图文素材的位置,第一篇为0,仅多图文使用
@return boolean|array
/
public function updateForeverArticles($media_id,$data,$index=0){
if (!$this->access_token && !$this->checkAuth()) return false;
if (!isset($data['media_id'])) $data['media_id'] = $media_id;
if (!isset($data['index'])) $data['index'] = $index;
$result = $this->http_post(self::API_URL_PREFIXself::MEDIA_FOREVER_NEWS_UPDATE_URL'access_token='$this->access_token,self::json_encode($data));
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}
/
获取永久素材(认证后的订阅号可用)
返回图文消息数组或二进制数据,失败返回false
@param string $media_id 媒体文件id
@param boolean $is_video 是否为视频文件,默认为否
@return boolean|array|raw data
/
public function getForeverMedia($media_id,$is_video=false){
if (!$this->access_token && !$this->checkAuth()) return false;
$data = array('media_id' => $media_id);
//#TODO 暂不确定此接口是否需要让视频文件走http协议
//如果要获取的素材是视频文件时,不能使用https协议,必须更换成http协议
//$url_prefix = $is_videostr_replace('https','http',self::API_URL_PREFIX):self::API_URL_PREFIX;
$result = $this->http_post(self::API_URL_PREFIXself::MEDIA_FOREVER_GET_URL'access_token='$this->access_token,self::json_encode($data));
if ($result)
{
if (is_string($result)) {
$json = json_decode($result,true);
if (isset($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return $result;
}
return false;
}
/
删除永久素材(认证后的订阅号可用)
@param string $media_id 媒体文件id
@return boolean
/
public function delForeverMedia($media_id){
if (!$this->access_token && !$this->checkAuth()) return false;
$data = array('media_id' => $media_id);
$result = $this->http_post(self::API_URL_PREFIXself::MEDIA_FOREVER_DEL_URL'access_token='$this->access_token,self::json_encode($data));
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return true;
}
return false;
}
/
获取永久素材列表(认证后的订阅号可用)
@param string $type 素材的类型,(image)、视频(video)、语音 (voice)、图文(news)
@param int $offset 全部素材的偏移位置,0表示从第一个素材
@param int $count 返回素材的数量,取值在1到20之间
@return boolean|array
返回数组格式:
array(
'total_count'=>0, //该类型的素材的总数
'item_count'=>0, //本次调用获取的素材的数量
'item'=>array() //素材列表数组,内容定义请参考官方文档
)
/
public function getForeverList($type,$offset,$count){
if (!$this->access_token && !$this->checkAuth()) return false;
$data = array(
'type' => $type,
'offset' => $offset,
'count' => $count,
);
$result = $this->http_post(self::API_URL_PREFIXself::MEDIA_FOREVER_BATCHGET_URL'access_token='$this->access_token,self::json_encode($data));
if ($result)
{
$json = json_decode($result,true);
if (isset($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}
/
获取永久素材总数(认证后的订阅号可用)
@return boolean|array
返回数组格式:
array(
'voice_count'=>0, //语音总数量
'video_count'=>0, //视频总数量
'image_count'=>0, //总数量
'news_count'=>0 //图文总数量
)
/
public function getForeverCount(){
if (!$this->access_token && !$this->checkAuth()) return false;
$result = $this->http_get(self::API_URL_PREFIXself::MEDIA_FOREVER_COUNT_URL'access_token='$this->access_token);
if ($result)
{
$json = json_decode($result,true);
if (isset($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}
/
上传图文消息素材,用于群发(认证后的订阅号可用)
@param array $data 消息结构{"articles":[{}]}
@return boolean|array
/
public function uploadArticles($data){
if (!$this->access_token && !$this->checkAuth()) return false;
$result = $this->http_post(self::API_URL_PREFIXself::MEDIA_UPLOADNEWS_URL'access_token='$this->access_token,self::json_encode($data));
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}
/
上传视频素材(认证后的订阅号可用)
@param array $data 消息结构
{
"media_id"=>"", //通过上传媒体接口得到的MediaId
"title"=>"TITLE", //视频标题
"description"=>"Description" //视频描述
}
@return boolean|array
{
"type":"video",
"media_id":"mediaid",
"created_at":1398848981
}
/
public function uploadMpVideo($data){
if (!$this->access_token && !$this->checkAuth()) return false;
$result = $this->http_post(self::UPLOAD_MEDIA_URLself::MEDIA_VIDEO_UPLOAD'access_token='$this->access_token,self::json_encode($data));
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}
以上就是关于求一段微信开发新增永久图片素材的接口代码全部的内容,包括:求一段微信开发新增永久图片素材的接口代码、、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)