米
心情
所有
图集
登录
搜索
原创
tp6的图片裁剪,图片缩略,按照要求生成合适大小的缩略图[更新]
砸破、迩的纯真
发布于:2021-02-03
图片裁剪以及缩略是网站必不可少的功能,很多新手朋友没有注意这些细节可能会导致网站图片过大,质量不好等一系列问题。 > 这里罗列了我在使用过程中将图片裁剪,缩略以及按照传过来的宽高等参数返回给缩略图的代码 注意:本站系统设置了运行目录是`public` ``` /** * 根据传来的函数 生成合适的缩略图 * @param $path * @param int $width * @param int $height * $type 1裁剪 ,2缩略 * @return string */ function img_thumber($path,$width=150,$height=115,$type=1){ $old_path = $path; //外站图片则直接返回 if (strstr($path,"thirdwx.qlogo.cn")){ return $path; } //去除域名 if (strstr($path,"http")){ $domain = request()->domain(); $start = strlen($domain); $end = strlen($path); $path = substr($path,$start,$end); } //判断原图路径 是否为图片 没有则新生成 /*if(is_file(".".$path)){ return $path; }*/ //组个新图片的路径及名称 $arr = explode("/",$path); $name = md5(end($arr)); array_pop($arr); $arr[] = $name; if(!$arr[0]){ unset($arr[0]); } $str = ''; foreach ( $arr as $k => $v){ $str .= "/".$v; } $suoluetu1_name = '/image_temp/'.md5($str)."_".$width."_".$height.".png"; if(is_file($suoluetu1_name)){ return config('web.cdn').$suoluetu1_name; } try{ $image = \think\Image::open('.'.$path); //当图片不足传过来的宽度时候不错处理 $w = $image->width(); if($w <= $width){ return $path; } if($type == 2){ $image->thumb($width, $height)->save('.'.$suoluetu1_name); //缩略 } if($type == 1){ //居中裁剪 $image->thumb($width, $height,\think\Image::THUMB_CENTER)->save('.'.$suoluetu1_name); } }catch (Exception $exception){ $suoluetu1_name = $old_path; } return config('web.cdn').$suoluetu1_name; } ```
注:原创不易,转载请注明出处(
https://micuu.com/new/1378.html
),本站所有资源来源于网络收集,如有侵权请联系QQ245557979进行清除。
最后修改与 2022-02-19
上一篇:
thinkphp6.0助手函数获取运行目录,根目录,配置目录,应用目录等
下一篇:
PHP,p函数,打印函数functionp()
留言反馈
请先登录
问题反馈渠道,如有软件无法下载或者其他问题可反馈。【由于某种原因,目前留言不展示】
用户需要登录后才能留言反馈
立即留言
珍藏视频
10分钟高效燃脂
30天高效瘦脸操
5分钟缓解颈椎操
友人
微博
全民K歌
唱吧
今日头条
悠悠网
科技小锅盖
彼岸桌面
阮一峰
laravel社区
V2ex
掘金
更多>