温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2021-03-02 10:43:14 来源:亿速云 阅读:174 作者:清风 栏目:编程语言

这篇“laravel系统自带的文件上传功能怎么用”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“laravel系统自带的文件上传功能怎么用”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章有所收获,下面让我们一起来看看具体内容吧。

Laravel 是什么

Laravel 是一套简洁、优雅的PHP Web开发框架。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。

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

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

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

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

简单的解释一下

  • 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系统自带的文件上传功能怎么用”这一关键问题有了一定的理解,具体使用情况还需要大家自己动手实验使用过才能领会,快去试试吧,如果想阅读更多相关知识点的文章,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI