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 相关文章推荐
NOD32 v2.70.32 简体中文封装版 提供下载了
Feb 27 PHP
PHP 获取远程网页内容的代码(fopen,curl已测)
Jun 06 PHP
数组与类使用PHP的可变变量名需要的注意的问题
Jun 20 PHP
在PHP中使用redis
Nov 04 PHP
PHP中soap的用法实例
Oct 24 PHP
php+mysqli使用预处理技术进行数据库查询的方法
Jan 28 PHP
php类的扩展和继承用法实例
Jun 20 PHP
如何使用PHP Embed SAPI实现Opcodes查看器
Nov 10 PHP
php正则去除网页中所有的html,js,css,注释的实现方法
Nov 03 PHP
解决Yii2邮件发送结果返回成功,但接收不到邮件的问题
May 23 PHP
ThinkPHP框架整合微信支付之刷卡模式图文详解
Apr 10 PHP
Laravel配置全局公共函数的方法步骤
May 09 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
php读取xml实例代码
2010/01/28 PHP
php 获取本机外网/公网IP的代码
2010/05/09 PHP
PHP 微信扫码支付源代码(推荐)
2016/11/03 PHP
js 字符串转化成数字的代码
2011/06/29 Javascript
滚动图片效果 jquery实现回旋滚动效果
2013/01/08 Javascript
基于jQuery的判断iPad、iPhone、Android是横屏还是竖屏的代码
2014/05/11 Javascript
javascript实现checkBox的全选,反选与赋值
2015/03/12 Javascript
理解和运用JavaScript的闭包机制
2015/08/13 Javascript
基于javascript实现漂亮的页面过渡动画效果附源码下载
2015/10/26 Javascript
js匿名函数作为函数参数详解
2016/06/01 Javascript
javascript 的变量、作用域和内存问题
2017/04/19 Javascript
详解React 16 中的异常处理
2017/07/28 Javascript
Three.js开发实现3D地图的实践过程总结
2017/11/20 Javascript
cnpm加速Angular项目创建的方法
2018/09/07 Javascript
详解微信小程序用定时器实现倒计时效果
2019/04/30 Javascript
详解vue-cli3多页应用改造
2019/06/04 Javascript
layui 富文本赋值,取值,取纯文本值的实例
2019/09/18 Javascript
vue-router之实现导航切换过渡动画效果
2019/10/31 Javascript
JavaScript装箱及拆箱boxing及unBoxing用法解析
2020/06/15 Javascript
Nuxt.js的路由跳转操作(页面跳转nuxt-link)
2020/11/06 Javascript
分析Python的Django框架的运行方式及处理流程
2015/04/08 Python
Phantomjs抓取渲染JS后的网页(Python代码)
2016/05/13 Python
Win10下python3.5和python2.7环境变量配置教程
2018/09/18 Python
pandas read_excel()和to_excel()函数解析
2019/09/19 Python
浅谈matplotlib 绘制梯度下降求解过程
2020/07/12 Python
基于python爬取梨视频实现过程解析
2020/11/09 Python
介绍下WebSphere的安全性
2013/01/31 面试题
银行员工职业规划范文
2014/01/21 职场文书
决心书标准格式
2014/03/11 职场文书
公司经理聘任书
2014/03/29 职场文书
关于护士节的演讲稿
2014/05/26 职场文书
经济贸易专业自荐信
2014/06/11 职场文书
2016元旦晚会主持词
2015/07/01 职场文书
《大禹治水》教学反思
2016/02/22 职场文书
只用20行Python代码实现屏幕录制功能
2021/06/02 Python
mysql分组后合并显示一个字段的多条数据方式
2022/01/22 MySQL