利用OSS参数对图片进行压缩

本文介绍了一个PHP函数,演示如何利用阿里云OSSAPI根据给定的URL和配置参数创建缩略图,涉及参数设置和缩放选项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/**
 * 通过oss生成缩略图
 * @param string $url
 * @param array $config
 * @return string
 */
public static function imgThumb(string $url, array $config = ['w' => 400, 'h' => 0, 'format' => 'jpg', 'quality' => 90])
{
    if(empty($url))
        return '';
    if (stripos($url, '?') !== false)
        $url .= '&';
    else
        $url .= '?';
    $url .= 'x-oss-process=image/resize';
    if (!empty($config['w'])) {
        $url .= ",w_{$config['w']}";
    }
    if (!empty($config['h'])) {
        $url .= ",h_{$config['h']}";
    }
    /**
     * https://help.aliyun.com/document_detail/44688.html?spm=a2c4g.11186623.6.740.406c390aYbirbi
     * lfit(默认值):等比缩放,缩放图限制为指定w与h的矩形内的最大图片。
     * mfit:等比缩放,缩放图为延伸出指定w与h的矩形框外的最小图片。
     * fill:将原图等比缩放为延伸出指定w与h的矩形框外的最小图片,之后将超出的部分进行居中裁剪。
     * pad:将原图缩放为指定w与h的矩形内的最大图片,之后使用指定颜色居中填充空白部分。
     * fixed:固定宽高,强制缩放。
     */
    $url .= ',m_lfit';//
    $url .= "/format,{$config['format']}";
    $url .= "/quality,q_{$config['quality']}";
    return $url;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值