首頁  >  文章  >  後端開發  >  php微信取得臨時素材的方法(附程式碼)

php微信取得臨時素材的方法(附程式碼)

不言
不言原創
2018-08-20 15:40:252980瀏覽

這篇文章帶給大家的內容是關於php微信取得臨時素材的方法(附程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

注意:1:媒體檔案在微信後台保存時間為3天,即3天後media_id失效。

           2:臨時素材media_id是可重複使用的。

  如果是php5.3以下的版本path路徑需要帶上@,加上文字絕對路徑,5.3以上的版本需要用new curlFile()類別取得絕對位址

$path = new CURLFile(realpath('G:/xampp/htdocs/wx/app/zan.jpg'));
$path = $path->name;//绝对路径
$type = 'images';//thumb
$res = $this->upload_media('image',$path);//获取到素材的media_id,有效期3天
$media_id = $res->media_id;
//以下是获取临时素材url
$url = $this->get_media($media_id);//获取到临时素材的url
    public function upload_media($type,$path)
    {
 
       $url = 
'https://api.weixin.qq.com/cgi-bin/media/upload?access_token=' . 
$this->get_access_token() . '&type=' . $type;
        $res = $this->upload($url, array('media' => '@'.$path));
        // 判断是否调用成功
        return $res;
    }  
    public function get_media($media_id)
    {
 
       return 
'https://api.weixin.qq.com/cgi-bin/media/get?access_token=' . 
$this->get_access_token() . '&media_id=' . $media_id;
    }
 /*
    * 上传图片。图文专用
     */
    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;  
          
    }

相關推薦:

php微信開發之上傳臨時素材,php開發素材_PHP教學

########################################################################################

以上是php微信取得臨時素材的方法(附程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn