thinkphp6-本地文件上传
2021/10/18 17:39:42
本文主要是介绍thinkphp6-本地文件上传,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
用法
配置文件 config/filesystem.php
<?php return [ // 默认磁盘 'default' => env('filesystem.driver', 'local'), // 磁盘列表 'disks' => [ 'local' => [ 'type' => 'local', 'root' => app()->getRuntimePath() . 'storage', ], 'public' => [ // 磁盘类型 'type' => 'local', // 磁盘路径 'root' => app()->getRootPath() . 'public/storage', // 磁盘路径对应的外部URL路径 'url' => '/storage', // 可见性 'visibility' => 'public', ], // 更多的磁盘配置信息 ], ];
控制器 app/controller/Index.php
<?php namespace app\controller; class Index { public function index() { return view('index'); } public function upload(){ // 获取表单上传文件 例如上传了001.jpg $file = request()->file('image'); // 上传到本地服务器 $savename = \think\facade\Filesystem::putFile( 'topic', $file); //$savename = \think\facade\Filesystem::disk('public')->putFile( 'topic', $file); echo $savename; } }
视图 app/view/index/index.html
<form action="/index/upload" enctype="multipart/form-data" method="post"> <input type="file" name="image" /> <br> <input type="submit" value="上传" /> </form>
测试(上传图片,查看runtime/storage下是否生成对应文件)
http://127.0.0.1:8000/index
多文件上传
视图
<form action="/index/index/upload" enctype="multipart/form-data" method="post"> <input type="file" name="image[]" /> <br> <input type="file" name="image[]" /> <br> <input type="file" name="image[]" /> <br> <input type="submit" value="上传" /> </form>
控制器
public function upload(){ // 获取表单上传文件 $files = request()->file('image'); $savename = []; foreach($files as $file){ $savename[] = \think\facade\Filesystem::putFile( 'topic', $file); } }
验证
public function upload(){ // 获取表单上传文件 $files = request()->file(); try { validate(['image'=>'fileSize:10240|fileExt:jpg|image:200,200,jpg']) ->check($files); $savename = []; foreach($files as $file) { $savename[] = \think\facade\Filesystem::putFile( 'topic', $file); } } catch (\think\exception\ValidateException $e) { echo $e->getMessage(); } }
验证参数
验证参数 说明 fileSize 上传文件的最大字节 fileExt 文件后缀,多个用逗号分割或者数组 fileMime 文件MIME类型,多个用逗号分割或者数组 image 验证图像文件的尺寸和类型
这篇关于thinkphp6-本地文件上传的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-19php8的协程和hyperf的协程有什么区别?-icode9专业技术文章分享
- 2024-12-19php8 的fiber是什么?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-11-29使用PHP 将ETH账户的资产汇集到一个账户
- 2024-11-23怎么实现安卓+php 热更新方案?-icode9专业技术文章分享
- 2024-11-22PHP 中怎么实现判断多个值是否为空、null 或者为 false?-icode9专业技术文章分享
- 2024-11-11开源 PHP 商城项目 CRMEB 二次开发和部署教程
- 2024-11-09怎么使用php在kaufland平台刊登商品?-icode9专业技术文章分享
- 2024-11-05PHP的抽象类和接口是什么,有什么区别-icode9专业技术文章分享