Files
oms-back/application/api/controller/Upload.php
2026-03-09 22:55:58 +08:00

56 lines
2.0 KiB
PHP

<?php
namespace app\api\controller;
use DateTime;
use think\Config;
use think\Controller;
use think\Db;
use think\Request;
use think\Cache;
header("Access-Control-Allow-Origin:*");
header("Access-Control-Allow-Methods:GET, POST, OPTIONS, DELETE");
header("Access-Control-Allow-Headers:DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type, Accept-Language, Origin, Accept-Encoding");
class Upload extends Common
{
public function uploadFile()
{
$file = request()->file('file'); // 获取上传的文件
if ($file == null) {
return json(array('code' => 1, 'msg' => '未上传文件'));
}
$originalName = $file->getInfo('name'); // 原始文件名
// 获取文件后缀
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
// 判断文件是否合法
$allowedExtensions = array("jpg", "jpeg", "png", "pdf","xls","xlsx","pptx","rar","zip","docx","doc","ppt");
if (!in_array(strtolower($extension), $allowedExtensions)) {
return json(array('code' => 1, 'msg' => '上传文件格式错误'));
}
// 移动文件到指定目录
$info = $file->move(ROOT_PATH . 'public' . DS . 'uploads');
if ($info) {
$filePath = '/uploads/' . $info->getSaveName();
// $filePath = Config::get('file_server_url') . '/uploads/' . $info->getSaveName();
// $fileName = $info->getFilename();
// $fileType = $info->getMime();
// $fileSize = $info->getSize();
// $fileData = file_get_contents($info->getPathname());
if ($filePath) {
return json(array('code' => 0, 'name' => $originalName,'msg' => '文件上传成功', 'url' => $filePath));
}
} else {
// 上传失败获取错误信息
return json(array('code' => 1, 'msg' => $file->getError()));
}
}
}