stew / image-uploader
使用Laravel Storage上传图片并转换为格式.webp
v1.0.5
2023-10-25 08:50 UTC
This package is auto-updated.
Last update: 2024-09-25 11:28:59 UTC
README
安装
composer require stew/image-uploader
用法
- 步骤1:导入UploaderTrait
use Stew\ImageUploader\Traits\UploaderTrait;
- 步骤2:在您的类/控制器中实现Trait
use Stew\ImageUploader\Traits\UploaderTrait;
class YourController extends Controller
{
use UploaderTrait;
public function uploadImage(Request $request)
{
// code
}
}
使用提供的方法
获取图片磁盘
- getImageDisk()方法获取图片存储磁盘的名称。默认情况下,它读取FILESYSTEM_DISK环境变量。您可以通过在环境配置中设置FILESYSTEM_DISK变量来指定不同的磁盘。
$this->getImageDisk();
- 请确保您的
.env
文件和配置filesystems.default
中有FILESYSTEM_DISK变量,例如
FILESYSTEM_DISK=local
'default' => env('FILESYSTEM_DISK', 'local'),
- 要使用数据库存储配置,您需要运行以下命令的迁移
php artisan migrate
- 上述命令将创建一个具有以下结构的"settings"表
Schema::create('settings', function (Blueprint $table) {
$table->id();
$table->string('key')->unique();
$table->text('value');
$table->timestamps();
});
- 我们为您提供了测试用的示例数据。您可以使用以下命令来生成示例数据。
php artisan db:seed --class=Stew\\ImageUploader\\Database\\Seeders\\SettingSeeder
- 要使用来自"settings"表的配置(默认情况下),您可以使用以下函数
$this->getImageDisk('YOUR TABLE') // Default is "settings"
- 如果您想自定义生成数据,可以使用以下命令
php artisan vendor:publish --provider="Stew\ImageUploader\Providers\ImageUploaderServiceProvider"
获取存储目录
- 要获取图片的存储目录,请使用getDirectory($path)方法。
$this->getDirectory($path);
将图片文件保存到存储
- 此方法用于将图片文件保存到您的存储中。它返回一个表示保存图片路径的字符串,扩展名为.webp。
$this->saveFileToStorage($fileName, $path);
检查Base64字符串
- 要检查一个字符串是否为Base64字符串,请使用isBase64($strEndcode)方法。
$this->isBase64($strEndcode);
删除图片
- 要删除存储中的图片文件,请使用deleteImage($filePath)方法。
$this->deleteImage($filePath);
公共磁盘
- 要创建符号链接,您可以使用storage:link Artisan命令
php artisan storage:link