摘要:先上鏈接如果覺得幫助了你,節(jié)省了你的時(shí)間記得喲用戶直接用這個(gè)序言之前用過很多擴(kuò)展包但是暫時(shí)沒有一個(gè)用的順心的,一些擴(kuò)展包配置太復(fù)雜,還有的擴(kuò)展包不能集成文件驅(qū)動(dòng),對于喜歡優(yōu)雅編碼的同學(xué)可能不能忍受最近閑下來看了一些優(yōu)秀的開源項(xiàng)目,從中
先上鏈接
如果覺得幫助了你,節(jié)省了你的時(shí)間記得 Star 喲.
iidestiny/flysystem-oss
iidestiny/laravel-filesystem-oss 「laravel 用戶直接用這個(gè)」
序言之前用過很多 oss 擴(kuò)展包但是暫時(shí)沒有一個(gè)用的順心的,一些擴(kuò)展包配置太復(fù)雜,還有的擴(kuò)展包不能集成 Laravel 文件驅(qū)動(dòng),對于喜歡優(yōu)雅編碼的同學(xué)可能不能忍受
最近閑下來看了一些優(yōu)秀的開源項(xiàng)目,從中學(xué)到不少東西。看了超哥的 overtrue/flysystem-qiniu 后決定自己也寫一個(gè) oss 擴(kuò)展包.
要求PHP >= 7.0
第一個(gè)擴(kuò)展包:直接使用不依賴框架$ composer require "iidestiny/flysystem-oss" -vvv配置
use LeagueFlysystemFilesystem; use IidestinyFlysystemOssOssAdapter; use IidestinyFlysystemOssPluginsFileUrl; $accessKeyId = "xxxxxx"; $accessKeySecret = "xxxxxx"; $endpoint= "oss.iidestiny.com"; $bucket = "bucket"; $isCName = true; // 如果 isCname 為 false,endpoint 應(yīng)配置 oss 提供的域名如:`oss-cn-beijing.aliyuncs.com`,cname 或 cdn 請自行到阿里 oss 后臺(tái)配置并綁定 bucket $adapter = new OssAdapter($accessKeyId, $accessKeySecret, $endpoint, $bucket, $isCName); $flysystem = new Filesystem($adapter);API
bool $flysystem->write("file.md", "contents"); bool $flysystem->write("file.md", "http://httpbin.org/robots.txt", ["options" => ["xxxxx" => "application/redirect302"]]); bool $flysystem->writeStream("file.md", fopen("path/to/your/local/file.jpg", "r")); bool $flysystem->update("file.md", "new contents"); bool $flysystem->updateStream("file.md", fopen("path/to/your/local/file.jpg", "r")); bool $flysystem->rename("foo.md", "bar.md"); bool $flysystem->copy("foo.md", "foo2.md"); bool $flysystem->delete("file.md"); bool $flysystem->has("file.md"); string|false $flysystem->read("file.md"); array $flysystem->listContents(); array $flysystem->getMetadata("file.md"); int $flysystem->getSize("file.md"); string $flysystem->getAdapter()->getUrl("file.md"); string $flysystem->getMimetype("file.md"); int $flysystem->getTimestamp("file.md");Plugins
use IidestinyFlysystemOssPluginsFileUrl $flysystem->addPlugin(new FileUrl()); string $flysystem->getUrl("file.md");第二個(gè)擴(kuò)展包:專門為 Laravel 適配
該擴(kuò)展包內(nèi)部自動(dòng)依賴了 iidestiny/flysystem-oss 所以兩個(gè)包不需要重復(fù)安裝,Laravel 用戶直接使用下面這條語句安裝就可以.
$ composer require "iidestiny/laravel-filesystem-oss" -vvv配置
在 config/filesystems.php 添加 oss 配置
[ //... "oss" => [ "driver" => "oss", "access_key" => env("OSS_ACCESS_KEY"), "secret_key" => env("OSS_SECRET_KEY"), "endpoint" => env("OSS_ENDPOINT"), "bucket" => env("OSS_BUCKET"), "isCName" => env("OSS_IS_CNAME", false), // 如果 isCname 為 false,endpoint 應(yīng)配置 oss 提供的域名如:`oss-cn-beijing.aliyuncs.com`,否則為自定義域名,,cname 或 cdn 請自行到阿里 oss 后臺(tái)配置并綁定 bucket ], //... ] ];
## 使用
put("avatars/filename.jpg", $fileContents); // check if a file exists $exists = $disk->has("file.jpg"); // get timestamp $time = $disk->lastModified("file1.jpg"); $time = $disk->getTimestamp("file1.jpg"); // copy a file $disk->copy("old/file1.jpg", "new/file1.jpg"); // move a file $disk->move("old/file1.jpg", "new/file1.jpg"); // get file contents $contents = $disk->read("folder/my_file.txt"); // get file url $url = $disk->getUrl("folder/my_file.txt");
更多方法查看 Laravel 文檔 laravel-filesystem-doc
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/29881.html
摘要:個(gè)最受歡迎的項(xiàng)目是一門開發(fā)項(xiàng)目的服務(wù)端腳本語言,但它也可以作為一門通用編程語言。在年創(chuàng)造出用于個(gè)人項(xiàng)目的開發(fā)。由項(xiàng)目組開發(fā)和維護(hù),為項(xiàng)目提供完整的郵件發(fā)送功能。項(xiàng)目基于和研發(fā)的管理系統(tǒng),由維護(hù)。 Github 10 個(gè)最受歡迎的 PHP 項(xiàng)目 PHP 是一門開發(fā) Web 項(xiàng)目的服務(wù)端腳本語言,但它也可以作為一門通用編程語言。在 1944 年 Rasmus Lerdorf 創(chuàng)造出 PH...
摘要:簡介另一個(gè)令人喜歡的地方,是擁有活躍的開發(fā)者社區(qū),而活躍的開發(fā)者社區(qū)帶來的,是繁華的擴(kuò)展包生態(tài)該項(xiàng)目統(tǒng)計(jì)了目前下載量最高的個(gè)擴(kuò)展包。記得喲相信下面這些擴(kuò)展包會(huì)讓你的編碼更加高效。排名下載量排名包地址下載次數(shù)描述圖片處理。 簡介 Laravel 另一個(gè)令人喜歡的地方,是擁有活躍的開發(fā)者社區(qū),而活躍的開發(fā)者社區(qū)帶來的,是繁華的擴(kuò)展包生態(tài) ———— @Summer 該項(xiàng)目統(tǒng)計(jì)了目前 pack...
摘要:,在后續(xù)測試時(shí)遇到一個(gè)詭異,當(dāng)文件過大時(shí),任務(wù)腳本上傳到七牛云失敗。當(dāng)我遇到大文件無法上傳到七牛云時(shí),斷點(diǎn)調(diào)試到這里,發(fā)現(xiàn)返回的是。后來還真被我找到了,七牛云官方提供一個(gè)腳本工具。 業(yè)務(wù)場景 需求 我們項(xiàng)目有一個(gè)文件上傳需求,需要從客戶端上傳到七牛云的對象存儲(chǔ)和自己的應(yīng)用服務(wù)器上。這里使用七牛云主要是實(shí)現(xiàn)下載分發(fā)。應(yīng)用服務(wù)器需要留一份是因?yàn)楹罄m(xù)需要做文件分析(并且是上傳后需要立馬分析出...
摘要:說明本文主要學(xué)習(xí)的模塊的源碼邏輯,把自己的一點(diǎn)點(diǎn)研究心得分享出來,希望對別人有所幫助。實(shí)際上,使用了的重載學(xué)習(xí)筆記之重載,通過魔術(shù)方法調(diào)用里的,而這個(gè)實(shí)際上就是,該中有方法,可以調(diào)用。 說明:本文主要學(xué)習(xí)Laravel的Filesystem模塊的源碼邏輯,把自己的一點(diǎn)點(diǎn)研究心得分享出來,希望對別人有所幫助。總的來說,F(xiàn)ilesystem模塊的源碼也比較簡單,Laravel的Illumi...
摘要:說明本文主要講述了的文件系統(tǒng)的小,邏輯不復(fù)雜,主要就是把上的一個(gè)文件下載到本地,和下載到中。寫驅(qū)動(dòng)由于沒有驅(qū)動(dòng),需要自定義下在中寫上名為的驅(qū)動(dòng)同時(shí)在注冊下該就行。執(zhí)行命令后,顯示上文件從上下載到上的文件該邏輯簡單,但很好玩。 說明:本文主要講述了Laravel的文件系統(tǒng)Filesystem的小Demo,邏輯不復(fù)雜,主要就是把Dropbox上的一個(gè)文件下載到本地local,和下載到AWS...
閱讀 1414·2021-11-24 10:20
閱讀 3655·2021-11-24 09:38
閱讀 2301·2021-09-27 13:37
閱讀 2202·2021-09-22 15:25
閱讀 2277·2021-09-01 18:33
閱讀 3495·2019-08-30 15:55
閱讀 1787·2019-08-30 15:54
閱讀 2095·2019-08-30 12:50