搜尋
首頁php教程php手册thinkphp5+zyFile.js將圖片上傳到七牛雲

thinkphp透過zyfile無刷新將圖片上傳到七牛雲,以及取得七牛雲下儲存空間中的檔案資訊
前面發布了一個透過zyFile將圖片上傳到本地的,當然我們做網站的時候常常要用到cnd。所以,我就跟大家分享一個把圖片上傳到七牛雲。
這裡要感謝七牛雲,(不要錢啊,哈哈)。
先講一下基本的設定吧,先設定application/index/config下面的key,這些key可以在七牛雲端個人中心的-->秘鑰管理中查看到,BUCKET參數就是你要上傳的儲存空間名稱。好了,基本上就不需要改動什麼了。

index.php的程式碼如下:<?php <br /> // +----------------------------------------------- -----------------------<br> // | snake<br> // +----------------------------------------------- -----------------------<br> // | Copyright (c) 2016~2022 http://baiyf.com All rights reserved.<br> // +----------------------------------------------- -----------------------<br> // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )<br> // +----------------------------------------------- -----------------------<br> // | Author: NickBai <br> // +----------------------------------------------- -----------------------<br> namespace appindexcontroller;<br> <br> use thinkController;<br> use QiniuAuth;<br> use QiniuStorageBucketManager;<br> use QiniuStorageUploadManager;<br> <br> class Index extends Controller<br> {<br>     public function index()<br>     {<br>         return $this->fetch('/index');<br>     }<br> <br>     /**<br>      * 後台預設首頁<br>      * @return mixed<br>      */<br>     public function indexPage()<br>     {<br>         return $this->fetch('index');<br>     }<br> <br>     /**<br>      * 雲端儲存下的所有圖片<br>      * @return mixed<br>      */<br>     public function picList()<br>     {<br>         require_once APP_PATH . '/../vendor/vendor/autoload.php';<br> <br>         $accessKey = config('ACCESSKEY');<br>         $secretKey = config('SECRETKEY');<br> <br>         $auth = new Auth($accessKey, $secretKey);<br>         $bucketMgr = new BucketManager($auth);<br> <br>         // 要列出的空間名稱<br>         $bucket = config('BUCKET');<br>         // 要列取文件的公開前綴<br>         $prefix = '';<br>         // 上一個列舉所回復的位置標記,而作為這次列舉的起點資訊。 <br>         $marker = '';<br>         // 這次所列舉的條目數<br>         //$limit = 3;<br> <br>         // 列舉文件<br>         $list = $bucketMgr->listFiles($bucket, $prefix, $marker);<br>         $list = array_filter($list);<br> <br>         $this->assign([<br>             'list' => $list<br>         ]);<br> <br>         return $this->fetch();<br>     }<br> <br>     //上傳圖片<br>     public function showUpload()<br>     {<br>         return $this->fetch();<br>     }<br> <br> <br>    //處理上傳的主方法<br>     public function upload()<br>     {<br>         $file = request()->file('fileList');<br> <br>         require_once APP_PATH . '/../vendor/vendor/autoload.php';<br> <br>         // 需要填寫你的 Access Key 和 Secret Key<br>         $accessKey = config('ACCESSKEY');<br>         $secretKey = config('SECRETKEY');<br>         // 建構鑑權對象<br>         $auth = new Auth($accessKey, $secretKey);<br> <br>         // 要上傳的空間<br>         $bucket = config('BUCKET');<br> <br>         // 產生上傳 Token<br>         $token = $auth->uploadToken($bucket);<br> <br>         // 要上傳檔案的本機路徑<br>         $filePath = $file->getRealPath();<br> <br>         $ext = pathinfo($file->getInfo('name'), PATHINFO_EXTENSION);  //後綴<br>      <br>         // 上傳到七牛後儲存的檔案名稱<br>         $key = substr(md5($file->getRealPath()) , 0, 5). date('YmdHis') . rand(0, 9999) . '.H . <br>         // 初始化 UploadManager 物件並進行檔案的上傳<br>         $uploadMgr = new UploadManager();<br> <br>         // 呼叫 UploadManager 的 putFile 方法上傳檔案的上傳<br>         list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath);<br>         if ($err !== null) {<br>             var_dump($err);<br>         } else {<br>             echo $bucket . '/' . $key;<br>         }<br>     }<br> }<br>view下面的檔案還蠻多的,這裡就不羅列程式碼了,自己下載附近去查看即可。本例子只是一個簡單的演示,當然很多功能都不是很完善,大家勿噴啊,就是給想用這個的人提供一個實現的思路。
七牛雲的SDK可以透過composer去更新,裡面的demo就可以滿足你的所有需求了,只要像我這樣改成tp5的寫法就行了。

thinkphp5+zyFile.js將圖片上傳到七牛雲
thinkphp5+zyFile.js將圖片上傳到七牛雲
好吧,檔案大小超標!那我將程式碼放入雲端盤,大家有興趣的可以過去看一下
http://pan.baidu.com/s/1bp5etbh
我的github:https://github.com/nick-bai/


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

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具