thinkphp6 上传图片
时间: 2023-08-01 10:14:27 浏览: 169
thinkphp实现图片上传功能
ThinkPHP6 中上传图片可以通过以下步骤实现:
1. 在控制器中引入文件上传类:
```php
use think\facade\Filesystem;
use think\facade\Request;
```
2. 创建方法来处理上传操作:
```php
public function upload()
{
// 获取表单上传文件
$file = request()->file('image');
// 移动到框架应用根目录/public/uploads/ 目录下
if ($file) {
$savename = Filesystem::disk('public')->putFile('uploads', $file);
// 返回图片的完整路径
return '/storage/' . $savename;
} else {
return '上传失败';
}
}
```
3. 在表单中添加文件上传控件:
```html
<form action="{:url('upload')}" method="post" enctype="multipart/form-data">
<input type="file" name="image">
<button type="submit">上传</button>
</form>
```
在上述代码中,`putFile()` 方法将文件上传到 `public/uploads/` 目录下,并返回文件的保存路径。`disk()` 方法用于指定上传文件的存储磁盘,这里使用的是 public 磁盘,因此上传的文件将保存在 `public` 目录下。最后,将返回的保存路径添加上 `/storage/` 前缀,即可获取完整的访问路径。
注意:上传文件时需要确保存储目录的写入权限。
阅读全文