婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PHP微信開發之微信錄音臨時轉永久存儲

PHP微信開發之微信錄音臨時轉永久存儲

熱門標簽:深圳外呼系統收費 專業電話機器人批發商 400電話辦理福州市 電話機器人危險嗎 400電話申請方法收費 南寧高頻外呼回撥系統哪家好 長沙crm外呼系統業務 離石地圖標注 江蘇外呼電銷機器人報價

最近做開發的時候碰到了這個問題,甲方希望用戶在微信端的錄音能夠一直有效。就是隨時打開好友的分享就能聽到好友的錄音。可在微信官方開發手冊上查到微信錄音文件上傳后只能在微信端保留3天時間,3天后就失效了。怎么辦呢?

1、通過調用微信媒體資源下載接口將微信錄音下載到本地

@params
String access_token 微信公眾號access_token
String serverId 通過錄音上傳接口獲取到的serverId
http://file.api.weixin.qq.com/cgi-bin/media/get?access_token={$access_token}media_id={$serverId}

2、從微信方下載到本地的錄音文件格式是amr,而微信網頁瀏覽器并不支持amr文件的音頻文件播放。所以我們需要將amr 轉換成
網頁能夠識別的mp3格式。

怎么轉換呢?我找到了一個平臺可以支持這種轉換,七牛云存儲平臺.通過七牛云存儲我們可以將amr轉換成mp3

require("./extension/autoload.php");//官方開發包 可在官方下載 php版本 載入其中的autoload.php extension 是隨意 起的名字

/**
 * @param
 * String $filepa 本地amr文件路徑
 * @return
 * String 解析后存儲在七牛存儲空間中的mp3遠程地址
 */
function upchange($filepa){
  $accessKey="七牛accessKey 在七牛后臺獲取";
  $secretKey="七牛secretKey 在七牛后臺獲取";
  $httpUrl ="七牛分配的訪問地址 在七牛后臺獲取";
  $bucket = "存儲空間對象bucket 在七牛后臺創建";
  //轉碼時使用的隊列名稱
  $pipeline = '轉碼隊列名稱 在七牛后臺創建';
  $auth = new \Qiniu\Auth($accessKey, $secretKey);
  $rand_name = getRandChar__(6).time().'.mp3';
  //要進行轉碼的轉碼操作
  $fops = "avthumb/mp3/ab/64k/ar/22050";
  //$fops = "mp3";
  //可以對轉碼后的文件進行使用saveas參數自定義命名,當然也可以不指定文件會默認命名并保存在當間
  $savekey = Qiniu\base64_urlSafeEncode('kepei:'.$rand_name);
  $fops = $fops.'|saveas/'.$savekey;

  $policy = array(
    'persistentOps'   => $fops,
    'persistentNotifyUrl' => 'http://',
  );
  $uptoken = $auth->uploadToken($bucket, null, 3600, $policy);

  //上傳文件的本地路徑
  $filePath = $filepa;
  $key = $rand_name;
  //$key = '';
  $uploadMgr = new \Qiniu\Storage\UploadManager(); 
  list($ret, $err) = $uploadMgr->putFile($uptoken, $key, $filePath);

  if ($err !== null) {
    return false;
  } else {
    return $httpUrl.$rand_name;
  }
}

function getRandChar__($length){
  $str = null;
  $strPol = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz";
  $max = strlen($strPol)-1;
  for($i=0;$i$length;$i++){
    $str.=$strPol[rand(0,$max)];//rand($min,$max)生成介于min和max兩個數之間的一個隨機整數
  }
  return $str;
}

$amrToMp3 = upchange('本地amr文件路徑');
//mp3 在七牛上的訪問地址
var_dump($amrToMp3);
/**
 * 如果你希望將這個mp3 存儲在本地而不是在七牛上,那么你需要在程序上等待幾秒,因為這時七牛在轉換改amr的格式
 */
 sleep(10);
$res = curlHttp($amrToMp3);    //curlHttp 就是 php  curl 機制 不懂的可以看下我下面文章機制
$open = fopen('demo.mp3','w');
fwrite($open,$res);
fclose($open);

php curlHttp

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 基于php的微信公眾平臺開發入門實例
  • php判斷頁面是否是微信打開的示例(微信打開網頁)
  • PHP對接微信公眾平臺消息接口開發流程教程
  • PHP微信支付開發實例
  • php實現微信公眾平臺賬號自定義菜單類
  • php微信公眾平臺開發之獲取用戶基本信息
  • 微信支付PHP SDK之微信公眾號支付代碼詳解
  • PHP開發微信支付的代碼分享
  • PHP版微信第三方實現一鍵登錄及獲取用戶信息的方法
  • PHP 微信支付類 demo

標簽:南京 濱州 株洲 太原 曲靖 南昌 興安盟 白酒營銷

巨人網絡通訊聲明:本文標題《PHP微信開發之微信錄音臨時轉永久存儲》,本文關鍵詞  PHP,微信,開,發之,錄音,臨時,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP微信開發之微信錄音臨時轉永久存儲》相關的同類信息!
  • 本頁收集關于PHP微信開發之微信錄音臨時轉永久存儲的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 江华| 龙江县| 泊头市| 宝鸡市| 商都县| 巴林右旗| 怀柔区| 淳化县| 卢氏县| 周至县| 虹口区| 凤翔县| 淮滨县| 肇东市| 林甸县| 库尔勒市| 张家界市| 略阳县| 梁平县| 伊川县| 静安区| 万年县| 蛟河市| 江永县| 嘉兴市| 喜德县| 石泉县| 葫芦岛市| 天祝| 滨州市| 息烽县| 巴马| 阿巴嘎旗| 宣化县| 兰考县| 威远县| 苍山县| 扎兰屯市| 石首市| 阿城市| 曲靖市|