模型代码
public function uploadFile()
{
// 判断是否有文件上传
if (request()->hasFile('img')) {
// 获取文件,file对应的是前端表单上传input的name
$file = request()->file('img');
// Laravel5.3中多了一个写法
// $file = $request->file;
// 初始化
$disk = QiniuStorage::disk('qiniu');
// 重命名文件
$fileName = md5($file->getClientOriginalName().time().rand()).'.'.$file->getClientOriginalExtension();
// 上传到七牛
$bool = $disk->put('iwanli/image_'.$fileName,file_get_contents($file->getRealPath()));
// 判断是否上传成功
if ($bool) {
$path = $disk->downloadUrl('iwanli/image_'.$fileName);
echo '上传成功'.$path;
}else{
echo '上传失败';
}
}else{
echo '没有文件';
}
视图页面
form method="post" action="{{url('upload')}}" enctype="multipart/form-data">
{{csrf_field()}}
<input type="file" name="img">
<button type="submit">上传图片</button>
</form>
将文件App\config\app.php
在数组prividers中添加
itbdw\QiniuStorage\QiniuFilesystemServiceProvider::class,
将文件App\config\filesystems.php
向disks数组中添加一个数组
'qiniu' => [
'driver' => 'qiniu',
'domain' => 'xxxxx.bkt.clouddn.com', //你的七牛域名
'access_key'=> '', //AccessKey askey
'secret_key'=> '', //SecretKey skkey
'bucket' => '1803a', //Bucket名字
],
如果上传较大的文件需要修改php.ini 中的
最大限制100M
post_max_size = 100M
以及
upload_max_filesize = 100M
修改php study中的扩展文件中的参数值设置
这里是修改上传时间,因为正常上传文件超过30秒会失败,这里调整大小为防止文件过大
max_execution_time 中的数值
以及
max_input_time 中的值