日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

laravel上传到七牛图片插件

發布時間:2024/9/5 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 laravel上传到七牛图片插件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.首先引入兩個插件

2.在https://developer.qiniu.com/kodo/sdk/1241/php找到安裝命令

在終端運行composer?require qiniu/php-sdk

3.自定義一個全局輔助函數,首先在項目的Http文件夾中新建Helpers文件夾,里面新建一個文件,名字就叫qiniu.php,注意引入

// 引入鑒權類
use Qiniu\Auth;
// 引入上傳類
use Qiniu\Storage\UploadManager;

在composer.json里寫上

"files": [
"app/Http/Helpers/qiniu.php",
],
然后在終端中執行自動加載命令:composer dump-autoload?命令,使其生效。
4.定義一個文件上傳的upload.js //文件上傳
var opts = {
url: "/photos",
type: "POST",
success: function (result) {
if (result.status == 0) {
alert(result.msg);
return false;
}
$("input[name='image']").val(result.msg);
$("#img_show").attr("src", result.msg);
},
error: function () {
alert('文件上傳失敗');
}
};

$('#image_upload').fileUpload(opts);

全局輔助函數

?

<?php
// 引入鑒權類
use Qiniu\Auth;
// 引入上傳類
use Qiniu\Storage\UploadManager;

function qiniu_upload($filePath)
{
// 需要填寫你的 Access Key 和 Secret Key
$accessKey ='XXX';
$secretKey ='XXX';
$bucket = "bigcat";
// 構建鑒權對象
$auth = new Auth($accessKey, $secretKey);
// 生成上傳 Token
$token = $auth->uploadToken($bucket);

// 上傳到七牛后保存的文件名
$key = basename($filePath);
// 初始化 UploadManager 對象并進行文件的上傳。
$uploadMgr = new UploadManager();
// 調用 UploadManager 的 putFile 方法進行文件的上傳。
list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath);
unlink($filePath);

}
5.創建圖片上傳控制器
photocontroller.php

class PhotoController extends Controller
{
/***
* 上傳圖片
* @param Request $request
*/
public function store(Request $request)
{
if ($request->hasFile('image') && $request->file('image')->isValid()) {

$allow_types = ['image/png', 'image/jpeg', 'image/gif'];
if (!in_array($request->image->getMimeType(), $allow_types)) {
return ['status' => 0, 'msg' => '圖片類型不正確!'];
}

if ($request->image->getClientSize() > 1024 * 1024 * 3) {
return ['status' => 0, 'msg' => '圖片大小不能超過 3M!'];
}

$path = $request->image->store('public/images');

//上傳到本地
// return ['status' => 1, 'image_url' => '/storage' . str_replace('public', '', $path)];

//上傳到七牛
$file_path = storage_path('app/') . $path;
qiniu_upload($file_path);
return ['status' => 1, 'msg' => 'http://XXX.php233.club/' . basename($file_path)];
}
}


}

可以使用圖片上傳功能了!

轉載于:https://www.cnblogs.com/big2cat/p/10605738.html

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的laravel上传到七牛图片插件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。