webman/app/controller/api/v1/ImageController.php

49 lines
1.2 KiB
PHP

<?php
namespace app\controller\api\v1;
use Webman\Controller;
use support\Request;
use support\Response;
use Webman\File;
use App\Utils\ApiResponse;
class ImageController
{
// 显示上传图片的页面
public function showUploadForm()
{
return view('admin.image_upload');
}
// 处理图片上传
public function upload(Request $request)
{
// 获取上传的文件
$file = $request->file('image');
// 验证文件是否上传成功
if ($file && $file->isValid()) {
// 设置保存路径
$uploadPath = public_path('uploads/images');
// 生成文件名,防止重名
$filename = uniqid('img_', true) . '.' . $file->getUploadExtension();
// 保存文件
$file->move($uploadPath. $filename);
// 返回成功消息
return ApiResponse::success(200, [
'status' => 'success',
'message' => '上传成功!',
'file' => "/uploads/images/{$filename}",
]);
}
// 上传失败
return ApiResponse::success(200, [
'status' => 'error',
'message' => '文件上传失败,请重试。',
]);
}
}