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 相关文章推荐
快速配置PHPMyAdmin方法
Jun 05 PHP
php 生成随机验证码图片代码
Feb 08 PHP
PHP文件锁定写入实例解析
Jul 14 PHP
php中strtotime函数用法详解
Nov 15 PHP
ucenter通信原理分析
Jan 09 PHP
php创建多级目录的方法
Mar 24 PHP
PHP实现加密文本文件并限制特定页面的存取的效果
Oct 21 PHP
详解php curl带有csrf-token验证模拟提交方法
Apr 18 PHP
php 中htmlentities导致中文无法查询问题
Sep 10 PHP
PHP实现微信退款功能
Oct 02 PHP
tp5(thinkPHP5)框架连接数据库的方法示例
Dec 24 PHP
laradock环境docker-compose操作详解
Jul 29 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 基本语法格式
2009/12/15 PHP
采集邮箱的php代码(抓取网页中的邮箱地址)
2012/07/17 PHP
PHP编程开发怎么提高编程效率 提高PHP编程技术
2015/11/09 PHP
jQuery 操作XML入门
2008/12/25 Javascript
javascript 类型判断代码分析
2010/03/28 Javascript
jQuery层次选择器选择元素使用介绍
2013/04/18 Javascript
jquery中获取id值方法小结
2013/09/22 Javascript
JavaScript二维数组实现的省市联动菜单
2014/05/08 Javascript
javascript实现简单的省市区三级联动
2015/05/14 Javascript
详解JS中Array对象扩展与String对象扩展
2016/01/07 Javascript
jQuery hover事件简单实现同时绑定2个方法
2016/06/07 Javascript
单击按钮发送验证码,出现倒计时的简单实例
2017/03/17 Javascript
Bootstrap标签页(Tab)插件使用方法
2017/03/21 Javascript
vue2.0+koa2+mongodb实现注册登录
2018/04/10 Javascript
vuex + axios 做登录验证 并且保存登录状态的实例
2018/09/16 Javascript
js屏蔽退格键(backspace或者叫后退键与F5)
2019/02/10 Javascript
nodejs 递归拷贝、读取目录下所有文件和目录
2019/07/18 NodeJs
jQuery实现鼠标移入显示蒙版效果
2020/01/11 jQuery
Vuex模块化应用实践示例
2020/02/03 Javascript
让IDE识别webpack的别名alias的实现方法
2020/05/06 Javascript
Python模拟登陆实现代码
2017/06/14 Python
python+pygame简单画板实现代码实例
2017/12/13 Python
Django之Mode的外键自关联和引用未定义的Model方法
2018/12/15 Python
Python selenium的基本使用方法分析
2019/12/21 Python
推荐一些比较有用的css3新属性
2014/11/11 HTML / CSS
HTML 5 标签、属性、事件及浏览器兼容性速查表 附打包下载
2012/10/20 HTML / CSS
全球知名旅游社区巴西站点:TripAdvisor巴西
2016/07/21 全球购物
澳大利亚拥有最好的家具和家居用品在线目的地:Nestz
2019/02/23 全球购物
团支书的期末学习总结自我评价
2013/11/01 职场文书
两则小学生的自我评价分享
2013/11/14 职场文书
门卫岗位职责
2013/11/15 职场文书
公司大门门卫岗位职责
2014/06/11 职场文书
无房产证房屋转让协议书合同样本
2014/10/18 职场文书
车辆安全隐患排查制度
2015/08/05 职场文书
《我的伯父鲁迅先生》教学反思
2016/02/16 职场文书
Win11局域网共享权限在哪里设置? Win11高级共享的设置技巧
2022/04/05 数码科技