Maison >développement back-end >tutoriel php >Introduction détaillée de nouveaux matériaux permanents dans php WeChat (processus de base)
Le contenu de cet article est une introduction détaillée (processus de base) sur les nouveaux matériaux permanents de PHP WeChat. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.
Les nouveaux matériaux permanents de WeChat, les plus importants sont les matériaux graphiques, le processus de base est le suivant :
Obtenez access_token
Téléchargez le matériel de couverture et obtenez le media_id du matériel permanent, qui peut être des images ou du type pouce
Téléchargez l'image dans le texte et obtenez l'URL du Tencent nom de domaine de l'image
Télécharger des éléments graphiques et textuels permanents
Je n'entrerai pas dans la première étape, curl peut la résoudre.
La deuxième étape pour obtenir le matériel permanent est similaire à l'article précédent pour obtenir l'identifiant temporaire. Je posterai le code plus tard
La troisième étape consiste à obtenir l'URL de l'image dans l'image. et le texte, qui est principalement bouclé, et le processus d'obtention des matériaux est presque le même
La quatrième étape est la plus importante, mais avec l'artefact, c'est facile
Le code est fondamentalement les méthodes encapsulées suivantes. Pour l'adresse de l'image, veuillez vous référer à l'adresse dans l'article précédent, le reste est très simple
/* * 新增永久图文 */ public function addEver_media($json){ $url = "https://api.weixin.qq.com/cgi-bin/material/add_news?access_token=".$this->get_access_token(); $res = $this->post($url, $json, 'json'); // 异常处理: 获取时网络错误 // 判断是否调用成功 return $res; } /* * 新增永久素材 */ public function addSucai($path,$type,$title="",$dis=""){ $url = "https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=".$this->get_access_token()."&type=".$type; if($type=="video"){ $b = json_encode(array( 'title'=>$title, 'introduction'=>$dis )); $res = array( 'media' => '@'.$path, 'description'=>$b ); $res = $this->upload($url, $res); }else{ $res = $this->upload($url, array('media' => '@'.$path)); } // 判断是否调用成功 return $res; } /* * 获取永久素材url */ public function getSucaiURL($media){ $url = "https://api.weixin.qq.com/cgi-bin/material/get_material?access_token=" .$this->get_access_token(); $arr = json_encode(array('media_id' => $media)); $res = $this->post($url, $arr, 'json'); // 判断是否调用成功 return $res; } /* * 上传图片获取url */ public function getPicURL($path){ $url = "https://api.weixin.qq.com/cgi-bin/media/uploadimg?access_token=" .$this->get_access_token() ; $res = $this->upload($url, array('media' => '@'.$path)); // 判断是否调用成功 return $res; } /* * 上传图片。图文专用 */ public static function upload($url, $filedata) { $curl = curl_init (); if (class_exists ( '/CURLFile' )) {//php5.5跟php5.6中的CURLOPT_SAFE_UPLOAD的默认值不同 curl_setopt ( $curl, CURLOPT_SAFE_UPLOAD, true ); } else { if (defined ( 'CURLOPT_SAFE_UPLOAD' )) { curl_setopt ( $curl, CURLOPT_SAFE_UPLOAD, false ); } } curl_setopt ( $curl, CURLOPT_URL, $url ); curl_setopt ( $curl, CURLOPT_SSL_VERIFYPEER, FALSE ); curl_setopt ( $curl, CURLOPT_SSL_VERIFYHOST, FALSE ); if (! empty ( $filedata )) { curl_setopt ( $curl, CURLOPT_POST, 1 ); curl_setopt ( $curl, CURLOPT_POSTFIELDS, $filedata ); } curl_setopt ( $curl, CURLOPT_RETURNTRANSFER, 1 ); $output = curl_exec ( $curl ); curl_close ( $curl ); return $output; } public function post($url, $fields, $data_type='text') { $cl = curl_init(); if(stripos($url, 'https://') !== FALSE) { curl_setopt($cl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($cl, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($cl, CURLOPT_SSLVERSION, 1); } curl_setopt($cl, CURLOPT_URL, $url); curl_setopt($cl, CURLOPT_RETURNTRANSFER, 1 ); curl_setopt($cl, CURLOPT_POST, true); curl_setopt($cl, CURLOPT_POSTFIELDS, $fields); $content = curl_exec($cl); $status = curl_getinfo($cl); curl_close($cl); if (isset($status['http_code']) && $status['http_code'] == 200) { if ($data_type == 'json') { $content = json_decode($content); } return $content; } else { return FALSE; } }
Recommandations associées :
Recommandations associées pour. matériaux permanents
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!