使用THINKPHP3.2 进行缩略图片截切的方法

今天在使用THINKPHP项目的时候,需要按自定义图片尺寸做图片截切,下面就把这个方法分享以做记录

//缩略图剪切
//$img 图片地址
//$url 保存路径
//$name图片保存名
function thum_images($img,$width,$height,$url,$name){
    //判断缩略图是否存在
    $goods_thumb_name ="img_thumb_{$width}_{$height}_{$name}";

    // 这个商品 已经生成过这个比例的图片就直接返回了
    if(file_exists($url.$goods_thumb_name.'.jpg'))  return './'.$url.$goods_thumb_name.'.jpg'; 
    if(file_exists($url.$goods_thumb_name.'.jpeg')) return './'.$url.$goods_thumb_name.'.jpeg'; 
    if(file_exists($url.$goods_thumb_name.'.gif'))  return './'.$url.$goods_thumb_name.'.gif'; 
    if(file_exists($url.$goods_thumb_name.'.png'))  return './'.$url.$goods_thumb_name.'.png'; 

    $image = new \Think\Image();
    $image->open($img);
    $goods_thumb_name = $goods_thumb_name. '.'.$image->type();     //$image->type()图片类型
    // 按照原图的比例生成一个最大为150*150的缩略图并保存为thumb.jpg
    $image->thumb($width, $height)->save($url.$goods_thumb_name,NULL,100);
    return "./".$url.$goods_thumb_name;
}

例:PHP中直接执行  thum_images($img,150,150,"Uploads/list_img/",$img_id); 

posted @ 2017-03-17 11:14  智昕  阅读(1722)  评论(0编辑  收藏  举报