th3khan / base64-to-uploaded-file
将base64文件转换为Laravel的UploadedFile
dev-main
2021-11-06 00:47 UTC
Requires
- php: >=7.4
This package is auto-updated.
Last update: 2024-09-06 07:15:59 UTC
README
将base64文件转换为Laravel的UploadedFile
要求
php >= 7.2
安装
composer require th3khan/base64-to-uploaded-file
示例
创建文件
- 创建一个
Base64ToUploadedFile
类的实例
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use th3khan\Base64ToUploadedFile\Base64ToUploadedFile; class FileController extends Controller { public function save_base64 (Request $request) { $Base = new Base64ToUploadedFile($request->base64file); } }
- 创建实例后,您将能够访问文件中的数据,并将其保存到项目的存储中。
获取文件信息
获取文件名
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use th3khan\Base64ToUploadedFile\Base64ToUploadedFile; class FileController extends Controller { public function save_base64 (Request $request) { $Base = new Base64ToUploadedFile($request->base64file); $filename = $Base->getFilename(); // example: return 'f485fd45-640c-4eac-ae13-b97088b089f5' } }
注意: 返回由Laravel的Illuminate\Support\Str::class创建的随机字母数字名称,每次实例化类时都将唯一
获取文件扩展名
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use th3khan\Base64ToUploadedFile\Base64ToUploadedFile; class FileController extends Controller { public function save_base64 (Request $request) { $Base = new Base64ToUploadedFile($request->base64file); $ext = $Base->getExtension(); // example: return 'png' } }
获取文件类型
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use th3khan\Base64ToUploadedFile\Base64ToUploadedFile; class FileController extends Controller { public function save_base64 (Request $request) { $Base = new Base64ToUploadedFile($request->base64file); $filetype = $Base->getFileType(); // example: return 'image/jpeg' } }
获取完整路径
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use th3khan\Base64ToUploadedFile\Base64ToUploadedFile; class FileController extends Controller { public function save_base64 (Request $request) { $Base = new Base64ToUploadedFile($request->base64file); $fullpath = $Base->getFullPath(); // example: return 'f485fd45-640c-4eac-ae13-b97088b089f5.jpg' } }
获取要保存的文件
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use th3khan\Base64ToUploadedFile\Base64ToUploadedFile; class FileController extends Controller { public function save_base64 (Request $request) { $Base = new Base64ToUploadedFile($request->base64file); $file = $Base->file(); $fullpath = $Base->getFullPath(); $file->storeAs('assets/files/', $fullpath); } }
以数组形式获取所有文件信息
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use th3khan\Base64ToUploadedFile\Base64ToUploadedFile; class FileController extends Controller { public function save_base64 (Request $request) { $Base = new Base64ToUploadedFile($request->base64file); /** * This function return a array * return [ * 'file' => Illuminate\Support\Str::class, * 'extension' => 'png', * 'filename' => 'f485fd45-640c-4eac-ae13-b97088b089f5, * 'full_path' => 'f485fd45-640c-4eac-ae13-b97088b089f5.jpg', * 'file_type' => 'image/jpeg' * ] **/ $info = $Base->getAllinfo(); // Save File nto Storage $info['file']->storeAs('assets/files/', $info['full_path']); } }
许可证
本软件包根据MIT许可证的条款进行许可