七牛云上傳視頻如何有效做到節省空間

  在上傳視頻的時候,我們通常會保存到第三方【七牛云】平臺。不過大多數程序員在系統后臺上傳視頻后,一般都是保存到了本地,如果視頻非常多或者視頻容量特別大的情況下,那么我們的服務器遲早有一天會滿,為了節省空間,下面教大家再上傳視頻時,如何以有效的節省服務器空間,一般情況下會把這些文件存到第三方,也就是需要我們下載qiniusdk,把qiniusdk放如Vendor目錄下。

  這里我們以課程視頻為例子,實現的hmtl源代碼如下:
<tr>

    <td class="text"><span class="bi_tian"> </span>課程視頻:</td><td class="input"><input type="file" placeholder="上傳視頻" style="margin-left:10px;" name="file"></td></tr><tr><td class="text"></td><td class="submit"><input type="submit" value="下一步" class="layui-btn" onclick="return Smit($(this),'myform')" /></td>

</tr>

  1. php代碼

public function doaddvideo(){

$model=M("class_video");

$id=I("id");

$data['class_id']=$id;

$data['title']=I("title");

$data['minute']=I("minute");

$data['jie']=I("jie");

if(!empty($_FILES['file']['name'])){import('ORG.Net.UploadFile');$upload = new UploadFile();// 實例化上傳類$upload->maxSize  = 9999999;// 設置附件上傳大小$upload->allowExts  = array("vob","ifo","mpg","mpeg","dat","mp4","3gp","mov","rm","ram","rmvb","wmv","asf","avi","asx");// 設置附件上傳類型 如果是MP3的話改為mp3 就ok$upload->savePath =  './Public/Uploads/video/';// 設置附件上傳目錄(先把文件上傳到本地服務器上)//$upload->saveName = I('uid').'_'.time();// 設置附件上傳目錄if(!$upload->upload()) {// 上傳錯誤提示錯誤信息$this->error($upload->getErrorMsg());}else{// 上傳成功 獲取上傳文件信息$info =  $upload->getUploadFileInfo();}require_once'./ThinkPHP/Extend/Vendor/qiniusdk/autoload.php';$accessKey = '';  $secretKey = '';  $bucket = '';   //這個是你上傳的空間$savepath = "";//這是你七牛的路徑$auth = new Auth($accessKey, $secretKey);$mediaid = time().uniqid();$savekey = \Qiniu\base64_urlSafeEncode('caifen:'.$mediaid.'.mp4');$fops = $fops.'|saveas/'.$savekey;$policy = array('persistentOps' => $fops,);$uptoken = $auth->uploadToken($bucket, null, 3600, $policy);$filePath = './Public/Uploads/video/'.$info[0]['savename'];$key = $mediaid.'.mp4';$uploadMgr = new UploadManager();list($ret, $err) = $uploadMgr->putFile($uptoken, $key, $filePath);if ($err !== null) {$dataname["info"]="error";} else {$savename=$ret['key'];$file = $savepath.$savename;$dataname["info"]=$file;}unlink($filePath);//上傳成功后刪除本地服務器上的文件// echo $file;exit;$data['video']=$file;if($model->add($data)){success("成功",U("Class/goodslist"));}else{error("失敗");}

}else{

  error("請上傳視頻");exit;

}

}

  好了,到這里就分享完成了,那么現在大家都可以去試一下了,如果還是存在不理解的地方,可以留言咨詢我們,或者有其他不同的解決方法,也可以留言分享,我們共同學習進步。

  本文由專業的鄭州app開發公司燚軒科技整理發布,原創不易,如需轉載請注明出處。

轉載于:https://blog.51cto.com/13686158/2300194

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/450461.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/450461.shtml
英文地址,請注明出處:http://en.pswp.cn/news/450461.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

運算符的優先級總能起作用嗎?

有關運算符優先級的規則稍微有點復雜。在大多數情況下&#xff0c;這些規則確實是你所需要的&#xff0c;然而&#xff0c;有人也指出其中的一些規則本來是可以設計得更好的。讓我們快速地回顧一些有關內容&#xff1a;“運算符優先級”是這樣一些規則的集合——這些規則規定了…

按鈕交互loading ---- 轉圈圈 加載

按鈕loading狀態自定義選項&#xff08;功能&#xff09;&#xff1a; 可以在元素上添加 data-am-loading 來設置選項&#xff1a; spinner 加載動畫圖標&#xff0c;適用于支持 CSS3 動畫、非 input 元素&#xff0c;寫圖標名稱即可&#xff1b;loadingText 加載時顯示的文字&…

面試題-線程

1.什么是線程 &#xff1f;線程和進程的區別 &#xff1f; 線程是操作系統能夠進行運算調度的最小單位&#xff0c;它被包含在進程之中&#xff0c;是進程中的實際運作單位。而進程是系統中 正在運行的一個程序&#xff0c;程序一旦運行就是進程。 區別&#xff1a;&#xf…

區塊鏈入門教程

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 區塊鏈&#xff08;blockchain&#xff09;是眼下的大熱門&#xff0c;新聞媒體大量報道&#xff0c;宣稱它將創造未來。 可是&#xf…

響應式面包屑菜單

在線演示 本地下載 轉載于:https://www.cnblogs.com/qixidi/p/10064991.html

5個能提高你工作效率的Excel技巧

Excel的應用在工作中還是十分廣泛的&#xff0c;那么下面小編就來為大家分享5個Excel技巧來幫助大家輕松提高工作效率。1. 不用數據驗證或數據有效性&#xff0c;自動生成下拉列表方法&#xff1a;按【Alt↓】組合鍵注意點&#xff1a;光標要定位在已有數據區域的下一個單元格&…

很好的推薦書籍

五百本編程書籍推薦【信息化類】 書號書名作者出版時間定價對應頁碼TP02041企業資源計劃&#xff08;ERP&#xff09;教程羅鴻2006-1&#xffe5;28.00—TP02031ERP理論、方法與實踐周玉清 等2005-12&#xffe5;39.00—TP01059ERP原理設計實施&#xff08;第3版&#xff09;羅…

消息推送

我有一個運動類app軟件,它的服務器是集群式的&#xff0c;有N臺服務器。現在我想在app上開發一個功能&#xff0c;在每天的晚上11點進行消息推送&#xff0c;他會推送今天走多少步&#xff0c;是否健康&#xff0c;明天至少走多少步。請問如何11點能準時觸達到用戶&#xff1f;…

day10:函數進階

1&#xff0c;函數的命令空間&#xff08;內置命名空間&#xff0c;全局命名空間&#xff0c;局部命名空間&#xff09;&#xff0c;內置大于全局大于局部 2&#xff0c;內置命名空間&#xff0c;就是Python解釋器一啟動就可以使用的名字&#xff0c;存儲在內置命名空間中&…

mysql導入source注意點

mysql的導入導出要注意字符集&#xff0c;防止查詢亂碼&#xff01; 導入前設置字符集 set names utf8; //導入指定編碼source /xxx.sqlcommit;

嗶哩嗶哩修改視頻速度

按住f12,打開控制臺&#xff0c;先輸入 const video document.querySelector("video"); video.play() // 開始 video.pause() // 暫停 video.playbackRate3 // 三倍速

編譯預處理

C語言編譯中&#xff0c;什么時候應該使用32位編譯程序? 32位編譯程序應該在32位操作系統上使用。由32位編譯程序生成的32位程序比16位程序運行得更快&#xff0c;這正是任何32位的東西都很熱門的原因。有那么多不同版本的Microsoft Windows&#xff0c;它們和哪種編譯程序組成…

去除List集合中的重復值(四種好用的方法)

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 最近項目中需要對list集合中的重復值進行處理&#xff0c;大部分是采用兩種方法&#xff0c;一種是用遍歷list集合判斷后賦給另一個list…

jQuery---過濾選擇器

4、過濾選擇器 過濾選擇器主要是通過特定的過濾規則來篩選出所需的DOM元素&#xff0c;過濾規則與CSS 中的偽類選擇器語法相同&#xff0c;即選擇器都以一個冒號(:)開頭。按照不同的過濾規則&#xff0c; 過濾選擇器可以分為基本過濾、內容過濾、可見性過濾、屬性過濾、子元素過…

安裝Frida抓包工具

curl https://bootstrap.pypa.io/get-pip.py | python3 pip install frida pip install frida-tools

正則介紹_grep

2019獨角獸企業重金招聘Python工程師標準>>> 10月16日任務 9.1 正則介紹_grep上 9.2 grep中 9.3 grep下 grep基本用法 grep [-cinvABC] word filename centos7.x版本的grep實則為grep --colorauto-c 顯示匹配到的行數[rootlocalhost ~]# cp /etc/passwd /tmp [rootl…

[國家集訓隊]middle

嘟嘟嘟 有誰能想到這題會用到主席樹呢&#xff1f;&#xff08;不愧是WJMZBMR出的題&#xff09; 首先考慮如果區間是固定的話&#xff0c;中位數該怎么求。 沒錯&#xff0c;二分。如果大于當前二分值\(mid\)的數比小于\(mid\)的數多&#xff0c;說明\(mid\)還可以再變大&…

Java List<Object>去掉重復對象-java8

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 public List<String> removeStringListDupli(List<String> stringList) {Set<String> set new LinkedHashSet<&g…

Vue + webpack 項目配置化、接口請求統一管理

準備工作 需求由來&#xff1a; 當項目越來越大的時候提高項目運行編譯速度、壓縮代碼體積、項目維護、bug修復......等等成為不得不考慮而且不得不做的問題。 又或者后面其他同事接手你的模塊&#xff0c;或者改你的bug時避免人家看的眼痛以及心里千百句mamaipi...問候。 并且…

Python實現Adaboost

1.Adaboost概念 提升方法的思路是綜合多個分類器&#xff0c;得到更準確的分類結果。 即“三個臭皮匠頂個諸葛亮”。《統計學習方法》稱AdaBoost是提升算法的代表&#xff0c;所謂提升算法&#xff0c;指的是一種常用的統計學習方法&#xff0c;應用廣泛且有效。在分類問題中&a…