如何使用PHP批量调整图像大小

我正在维护一个旧网站.现在我的客户想要添加超过6000种产品.产品图像具有不同的尺寸.我必须申请批处理.我必须将它们全部调整为拇指大小230×230.有没有办法从PHP?如果是这样的话?

我必须阅读主图像文件夹中不同文件夹中的所有内容.此图像文件夹有40个子文件夹.每个文件名称都是类别名称,其中的图像是产品(图像).

if(imagecopyresampled($NewCanves, $NewImage,0, 0, 0, 0, $NewWidth, $NewHeight, $iWidth, $iHeight))
{
    // copy file
    if(imagejpeg($NewCanves,$Destimage,$Quality))
    {
        imagedestroy($NewCanves);
        return true;
    }
}

解决方法:

使用PHP,您可以使用读取文件夹内的文件

$images= glob("*"); // * will address all files
// or
$images= glob("*.jpg"); // this will address only jpg images

然后遍历$images

foreach ($images as $filename) {
   //resize the image
   if(resizeImage($imagePath,$destPath,$NewImageWidth,$NewImageHeight,$Quality)){
     echo $filename.' resize Success!<br />';
   }
}

function resizeImage($SrcImage,$Destimage, $MaxWidth,$MaxHeight,$Quality)
{
    list($iWidth,$iHeight,$type)    = getimagesize($SrcImage);

    //if you dont want to rescale image

    $NewWidth=$MaxWidth;
    $NewHeight=$MaxHeight;
    $NewCanves              = imagecreatetruecolor($NewWidth, $NewHeight);

    // Resize Image
    if(imagecopyresampled($NewCanves, $NewImage,0, 0, 0, 0, $NewWidth, $NewHeight, $iWidth, $iHeight))
     {
        // copy file
        if(imagejpeg($NewCanves,$Destimage,$Quality))
        {
            imagedestroy($NewCanves);
            return true;
        }
    }
}

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...