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 相关文章推荐
中国站长站 For Dede4.0 采集规则
May 27 PHP
phpMyAdmin 安装及问题总结
May 28 PHP
php报表之jpgraph柱状图实例代码
Aug 22 PHP
PHP5.4中json_encode中文转码的变化小结
Jan 30 PHP
session在php5.3中的变化 session_is_registered() is deprecated in
Nov 12 PHP
php+memcache实现的网站在线人数统计代码
Jul 04 PHP
3款值得推荐的微信开发开源框架
Oct 28 PHP
php实现的农历算法实例
Aug 11 PHP
PHP中spl_autoload_register()函数用法实例详解
Jul 18 PHP
PHP基于redis计数器类定义与用法示例
Feb 08 PHP
swoole锁的机制代码实例讲解
Mar 04 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
WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0配置
2008/03/28 PHP
PHP 页面编码声明方法详解(header或meta)
2010/03/12 PHP
php使用MySQL保存session会话的方法
2015/06/18 PHP
php使用curl并发减少后端访问时间的方法分析
2016/05/12 PHP
php微信高级接口调用方法(自定义菜单接口、客服接口、二维码)
2016/11/28 PHP
javascript作用域容易记错的两个地方分析
2012/06/22 Javascript
JavaScript设计模式之工厂模式和构造器模式
2015/02/11 Javascript
jquery常用函数与方法汇总
2015/09/01 Javascript
全面介绍vue 全家桶和项目实例
2017/12/27 Javascript
如何从零开始利用js手写一个Promise库详解
2018/04/19 Javascript
详解适配器在JavaScript中的体现
2018/09/28 Javascript
JS算法题之查找数字在数组中的索引位置
2019/05/15 Javascript
JS求1到任意数之间的所有质数的方法详解
2019/05/20 Javascript
JS异步处理的进化史深入讲解
2019/08/25 Javascript
node脚手架搭建服务器实现token验证的方法
2021/01/20 Javascript
详解js创建对象的几种方式和对象方法
2021/03/01 Javascript
[50:28]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Newbee vs KG
2018/04/01 DOTA
[42:20]Secret vs Liquid 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
疯狂上涨的Python 开发者应从2.x还是3.x着手?
2017/11/16 Python
浅谈Python2获取中文文件名的编码问题
2018/01/09 Python
10个Python小技巧你值得拥有
2018/09/29 Python
Python代码实现删除一个list里面重复元素的方法
2019/04/02 Python
python实现比对美团接口返回数据和本地mongo数据是否一致示例
2019/08/09 Python
基于python实现学生信息管理系统
2019/11/22 Python
python 偷懒技巧——使用 keyboard 录制键盘事件
2020/09/21 Python
Pytorch 中的optimizer使用说明
2021/03/03 Python
《观舞记》教学反思
2014/04/16 职场文书
我的老师教学反思
2014/05/01 职场文书
警示教育活动总结
2014/05/05 职场文书
共青团员自我评价范文
2014/09/14 职场文书
公司禁烟通知
2015/04/23 职场文书
2015年银行员工工作总结
2015/04/24 职场文书
php微信小程序解包过程实例详解
2021/03/31 PHP
教你快速开启Apache SkyWalking的自监控
2021/04/25 Servers
Pytorch中的数据集划分&正则化方法
2021/05/27 Python
Nginx性能优化之Gzip压缩设置详解(最大程度提高页面打开速度)
2022/02/12 Servers