Laravel框架实现文件上传的方法分析


Posted in PHP onSeptember 29, 2019

本文实例讲述了Laravel框架实现文件上传的方法。分享给大家供大家参考,具体如下:

配置文件:

config/filesystems.php,

新建存储空间

'uplaods' => [
  'driver' => 'local',
  'root' => storage_path('app/uploads'),
],

视图中:

头像:

<input type="file" name="headimg" />

控制器:

$file = $request->file('headimg');
if($file && $file->isValid()){
//   //获取原图片信息
    $ext = $file->getClientOriginalExtension();
    $originalName = $file->getClientOriginalName();
    $type = $file->getClientMimeType();
    $path = $file->getRealPath();
    //验证图片类型,大小等
    //保存图片
    $save_name = date('YmdHis',time()) .'-' .uniqid() .'.'. $ext;
    $bool = Storage::disk('uploads')->put($save_name,file_get_contents($path));
    if(!$bool){
      return redirect()->back()->withErrors('图片上传失败')->withInput();
    }
}else{
    return redirect()->back()->withErrors('请上传图片')->withInput();
}
//如果验证通过,则继续执行下面的代码
$data = $request->input('Student');
//图片全路径
$img_web_path = storage_path('app/uploads') . '/' .$save_name;
//图片相对路径
$data['headimg'] = $save_name;
if(Student::create($data)){
    return redirect('Student/index')->with('success','添加成功');
}else{
    return redirect()->back();
}

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php代码运行时间查看类代码分享
Aug 06 PHP
PHP静态调用非静态方法的应用分析
May 02 PHP
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
May 07 PHP
基于php常用正则表达式的整理汇总
Jun 08 PHP
PHP实现图片旋转效果实例代码
Oct 01 PHP
PHP实现指定字段的多维数组排序函数分享
Mar 09 PHP
PHP伪造来源HTTP_REFERER的方法实例详解
Jul 06 PHP
PHP定时执行任务的3种方法详解
Dec 21 PHP
PHP实现QQ登录实例代码
Jan 14 PHP
js基于qrcode.js生成二维码的方法【附demo插件源码下载】
Dec 28 PHP
PHP实用小技巧之调用录像的方法
Dec 05 PHP
PHP开发API接口签名生成及验证操作示例
May 27 PHP
laravel http 自定义公共验证和响应的方法
Sep 29 #PHP
laravel5.2表单验证,并显示错误信息的实例
Sep 29 #PHP
laravel 验证错误信息到 blade模板的方法
Sep 29 #PHP
php写app用的框架整理
Sep 29 #PHP
php使用json-schema模块实现json校验示例
Sep 28 #PHP
php中文语义分析实现方法示例
Sep 28 #PHP
PHP迭代器和生成器用法实例分析
Sep 28 #PHP
You might like
打造计数器DIY三步曲(上)
2006/10/09 PHP
PHP反射机制用法实例
2014/08/28 PHP
一个完整的PHP类包含的七种语法说明
2015/06/04 PHP
php结合正则获取字符串中数字
2015/06/19 PHP
PHP中COOKIES使用示例
2015/07/26 PHP
PHP读取Excel内的图片(phpspreadsheet和PHPExcel扩展库)
2019/11/19 PHP
通过Jquery遍历Json的两种数据结构的实现代码
2011/01/19 Javascript
jquery的ajax跨域请求原理和示例
2014/05/08 Javascript
javascript中的Base64、UTF8编码与解码详解
2015/03/18 Javascript
js数组依据下标删除元素
2015/04/14 Javascript
javascript事件处理模型实例说明
2016/05/31 Javascript
微信 java 实现js-sdk 图片上传下载完整流程
2016/10/21 Javascript
angular实现spa单页面应用实例
2017/07/10 Javascript
vue轮播图插件vue-awesome-swiper
2017/11/27 Javascript
vue2.0 父组件给子组件传递数据的方法
2018/01/15 Javascript
推荐15个最好用的JavaScript代码压缩工具
2019/02/13 Javascript
初学node.js中实现删除用户路由
2019/05/27 Javascript
JavaScript实时更新当前的时间的示例代码
2020/07/15 Javascript
Python实现的数据结构与算法之双端队列详解
2015/04/22 Python
用Python中的字典来处理索引统计的方法
2015/05/05 Python
Python通过Django实现用户注册和邮箱验证功能代码
2017/12/11 Python
Python使用matplotlib填充图形指定区域代码示例
2018/01/16 Python
django之对FileField字段的upload_to的设定方法
2019/07/28 Python
python中如何实现将数据分成训练集与测试集的方法
2019/09/13 Python
python+adb+monkey实现Rom稳定性测试详解
2020/04/23 Python
python如何求100以内的素数
2020/05/27 Python
HTML5里autofocus自动聚焦属性使用介绍
2016/06/22 HTML / CSS
英国第二大营养品供应商:Vitabiotics
2016/10/01 全球购物
美国二手奢侈品寄售网站:TheRealReal
2016/10/29 全球购物
美国时尚孕妇装品牌:A Pea in the Pod
2017/07/16 全球购物
加拿大专业美发产品购物网站:Chatters
2021/02/28 全球购物
公司培训欢迎词
2014/01/10 职场文书
奥巴马上海演讲稿
2014/09/10 职场文书
Python Pycharm虚拟下百度飞浆PaddleX安装报错问题及处理方法(亲测100%有效)
2021/05/24 Python
python图片灰度化处理的几种方法
2021/06/23 Python
Springboot集成阿里云OSS上传文件系统教程
2021/06/28 Java/Android