最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

laravel系统自带的文件上传功能

来源:动视网 责编:小采 时间:2020-11-02 18:14:00
文档

laravel系统自带的文件上传功能

laravel系统自带的文件上传功能:下面由Laravel教程栏目给大家介绍laravel系统自带的文件上传功能 ,希望对需要的朋友有所帮助! 对于上传文件这个功能,说难吧,其实都是封装好的,真的不难。说不难吧,各种配置什么的有时候真的也会让人头疼。今天呢,就说一下关于laravel的上传功能的介
推荐度:
导读laravel系统自带的文件上传功能:下面由Laravel教程栏目给大家介绍laravel系统自带的文件上传功能 ,希望对需要的朋友有所帮助! 对于上传文件这个功能,说难吧,其实都是封装好的,真的不难。说不难吧,各种配置什么的有时候真的也会让人头疼。今天呢,就说一下关于laravel的上传功能的介


下面由Laravel教程栏目给大家介绍laravel系统自带的文件上传功能 ,希望对需要的朋友有所帮助!

对于上传文件这个功能,说难吧,其实都是封装好的,真的不难。说不难吧,各种配置什么的有时候真的也会让人头疼。今天呢,就说一下关于laravel的上传功能的介绍。

直接调用命令从composer上下载了一份laravel的框架,命名为blog(这个随便)

进入文件blog->config->filesystems.php,其中有一个disk的配置。


简单的解释一下

  • disk配置项的总调用,在后面会用到的。可以把它当做一个public的调用方法这样就很好理解了
  • local代表的是其中的一个小的配置项,因为或许一个项目中,要有很多不同的存储方式或者存储位置,local,public,s3都是表示不同的存储方式。
  • driver表示的是存储位置,像local表示的就是存储在本地项目中。s3是存储在亚马逊的磁盘位置,或许还有很多,到时候我们就可以按照这三个的demo模式继续的创建
  • 因为一般都是存储在项目本身,所以我们下面去掉s3的解释。
  • root表示的是文件存储的位置。‘app/public’表示的就是文件存储在blog->storage->app->public下面。‘’app/public‘’是可以随意的改变的。
  • 正常的就像local的两个配置就可以了。
  • 配置完之后呢就到了代码块了。代码块就相当简单了。

    1. 创建路由,路由自己定义就好了(这个就不用解释了吧)
    2. 编写和路由对应的方法,在方法里面开始编写代码。

    前端代码

    <p class="container">
     <p class="panel-heading">上传文件</p>
     <form class="form-horizontal" method="POST" action="" enctype="multipart/form-data">
     {{ csrf_field() }} 
     <label for="file">选择文件</label>
     <input id="file" type="file" class="form-control" name="source" required> 
     <button type="submit" class="btn btn-primary">确定</button>
     </form>
    </p>

    红色部分代码是必须加上的,如果不加上的话,下面的php语句中的代码验证就无法实现

    后端代码

    3

    public function upload(Request $request){
     	if ($request->isMethod('POST')) { //判断是否是POST上传,应该不会有人用get吧,恩,不会的
    
     	//在源生的php代码中是使用$_FILE来查看上传文件的属性
     	//但是在laravel里面有更好的封装好的方法,就是下面这个
     	//显示的属性更多
     	$fileCharater = $request->file('source');
    
     	if ($fileCharater->isValid()) { //括号里面的是必须加的哦
     	//如果括号里面的不加上的话,下面的方法也无法调用的
    
     	//获取文件的扩展名 
     	$ext = $fileCharater->getClientOriginalExtension();
    
     	//获取文件的绝对路径
     	$path = $fileCharater->getRealPath();
    
     	//定义文件名
     	$filename = date('Y-m-d-h-i-s').'.'.$ext;
    
     	//存储文件。disk里面的public。总的来说,就是调用disk模块里的public配置
     	Storage::disk('public')->put($filename, file_get_contents($path));
     	}
     	}
     	return view('upload');
     }

    小编是一边弄一边打,生怕自己写错了给你们笑话。最后成功的上传了文件进去。

    文档

    laravel系统自带的文件上传功能

    laravel系统自带的文件上传功能:下面由Laravel教程栏目给大家介绍laravel系统自带的文件上传功能 ,希望对需要的朋友有所帮助! 对于上传文件这个功能,说难吧,其实都是封装好的,真的不难。说不难吧,各种配置什么的有时候真的也会让人头疼。今天呢,就说一下关于laravel的上传功能的介
    推荐度:
    标签: 文件 上传 的文件
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top