Laravel8实现上传图片裁剪功能方法1、 安装扩展composer;require;intervention/image2、 在 app/config/app.php 添加 providers 数组中添加如下代码:Intervention\Image\ImageServiceProvider::class,3、 在 app/co
Laravel8实现上传图片裁剪功能方法
1、 安装扩展
composer require intervention/image
2、 在 app/config/app.php 添加 providers 数组中添加如下代码:
Intervention\Image\ImageServiceProvider::class,
3、 在 app/config/app.php 添加 aliases 数组中添加如下代码:
'Image' => Intervention\Image\Facades\Image::class,
4、发布扩展生成 config/image.php 配置文件,执行下面命令
php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravelRecent"
5、使用
<?php
use Intervention\Image\Facades\Image;
//后面为图片路径
$img = Image::make('./image/abc.jpg')->resize(300, 300);
// 将处理后的图片重新保存到其他路径
$img->save('./image/new_abc.jpg');
?>
完整方法:
<?php
/*
* 图片上传接口
* 文件名
* 文件夹名
* */
public static function uploadImg($file,$folder){
$tmp = $file;
$folder = $folder ? $folder : "";
$path = '/static/uploads'; //public下的Uploads
if ($tmp->isValid()) { //判断文件上传是否有效
$FileType = $tmp->getClientOriginalExtension(); //获取文件后缀
$FilePath = $tmp->getRealPath(); //获取文件临时存放位置
$FileName = $folder.'/'.date('Ymd').'/' . uniqid() . '.' . $FileType; //定义文件名
Storage::disk('Uploads')->put($FileName, file_get_contents($FilePath)); //存储文件
$img = Image::make(public_path().$path . '/' . $FileName)->resize(30, 30);
$img->save(public_path().$path . '/' . $FileName);
return $data = [
'code' => ApiErrDesc::UPLOAD_SUCCESS[0],
'msg' =>ApiErrDesc::UPLOAD_SUCCESS[1] ,
'data'=>['path' => $path . '/' . $FileName] //文件路径
];
}else{
return $data = [
'code' => ApiErrDesc::UPLOAD_ERROR[0],
'msg' =>ApiErrDesc::UPLOAD_ERROR[1] ,
'data'=>[]
];
}
}
?>
沃梦达教程
本文标题为:Laravel8实现上传图片裁剪功能方法


基础教程推荐
猜你喜欢
- php生成短网址/短链接原理和用法实例分析 2023-04-20
- Laravel修改验证提示信息为中文的示例 2023-03-08
- PHP采用get获取url汉字出现乱码的解决方法 2024-03-28
- PHP基于反射机制实现自动依赖注入的方法详解 2022-10-02
- php去除deprecated的实例方法 2022-09-02
- PHP字符串函数系列之nl2br(),在字符串中的每个新行 (\n) 之前插入 HTML 换行符br 2024-03-28
- PHP laravel使用自定义邮件类实现发送邮件 2023-07-03
- Laravel 解决composer相关操作提示php相关异常的问题 2023-03-08
- php如何获取当前日期和星期 2024-12-06
- php+mysql开发的最简单在线题库(在线做题系统)完整案例 2023-01-04