laravel上传到七牛图片插件

Posted big2cat

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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);
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://img.php233.club/‘ . basename($file_path)];
}
}


}

可以使用图片上传功能了!

以上是关于laravel上传到七牛图片插件的主要内容,如果未能解决你的问题,请参考以下文章

如何自动上传文件到七牛云

node 上传图片到七牛

php表单上传图片到七牛云存储并返回地址……求具体流程~有代码更好

安卓批量上传图片到七牛的两种方法

Go实战 | 电商平台 图片上传到七牛云

如何将图片上传到七牛云平台?