ThinkPHP5 动态生成图片缩略图

需求场景php

 

不一样终端(PC端、手机端、平板),不一样界面(列表页、详情页),对图片大小的要求不同, 若是全部场景下都使用同一尺寸的图片,势必对会网络带宽及服务器性能形成必定的影响,由此须要服务器端可以根据前端的请求参数,自动匹配出相对应的图片资源,以此来下降服务端的压力,同时也能给用户带来更友好的用户体验。前端

具体步骤以下:node

一、开启apache的rewrite功能,具体方法请自行百度。apache

二、修改.htaccessapi

 

 

以上配置规则表示,若是存在对应的图片资源,则由apache直接返回,若是不存在,则转发给/index.php/api/Attachment/thumbnail处理器去处理。浏览器

其它参数说明:服务器

$1:图片所属模块swoole

$2:图片上传日期网络

$3:原始图片名称(不含后缀)性能

$4:目标图片宽度

$5:目标图片高度

$6:图片后缀

友情提示:根据图片存储规则的不一样,此处的配置规则及参数能够做相应的调整。

三、新增缩略图处理程序,此处为Attachment 文件,内容以下:

 

 四、vendor/topthink/think-image/src/Image.php文件中新增一个方法,内容以下:

 

 

五、访问示例

在浏览器中输入:http://域名/public/upload/news/20190325/442b8dba3f706cf6822c1255bcaa68de_320_240.jpg,将会看到一张宽320,高240的图片。

有须要学习交流的友人请加入交流群的我们一块儿,群内都是1-7年的开发者,但愿能够一块儿交流,探讨PHP,swoole这块的技术 或者有其余问题 也能够问,获取swoole或者php进阶相关资料私聊管理便可

别忘了点赞哦,按期分享干货

点此加入该群​jq.qq.com

相关文章
相关标签/搜索