6
0
Fork 0
jiqu-library-server/app/Admin/Controllers/WangEditoController.php

48 lines
1.1 KiB
PHP

<?php
namespace App\Admin\Controllers;
use Illuminate\Contracts\Filesystem\Filesystem;
use Illuminate\Filesystem\FilesystemAdapter;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
use Illuminate\Support\Facades\Storage;
use Symfony\Component\HttpFoundation\File\UploadedFile;
class WangEditoController extends Controller
{
public function upload(Request $request)
{
$file = $request->file('file');
$dir = $request->get('dir', 'wang-editor');
$disk = $this->disk();
$newName = $this->generateNewName($file);
$disk->putFileAs($dir, $file, $newName);
return [
'errno' => 0,
'data' => [
'url' => $disk->url("{$dir}/$newName")
]
];
}
protected function generateNewName(UploadedFile $file): string
{
return uniqid(md5($file->getClientOriginalName())).'.'.$file->getClientOriginalExtension();
}
/**
* @return Filesystem|FilesystemAdapter
*/
protected function disk()
{
$disk = request()->get('disk') ?: config('admin.upload.disk');
return Storage::disk($disk);
}
}